Joe Ceresini a6c63ced40 Added documentation to README | 7 years ago | |
---|---|---|
bash | 7 years ago | |
python | 7 years ago | |
testfiles | 7 years ago | |
README.md | 7 years ago |
Some tests building a simple API that determines whether an input string contains every lower-case character in the latin alphabet
URL: '/contains_all_chars.sh' Method: POST Data params: Plain text Details: Removes all non-interesting characters, sorts remaining characters, removes duplicates. Checks that the length of the result matches the length of the characters we wanted.
Example response:
{ "error": null, "result": True }
Example use:
# Sample string with all alphabet characters
[jceresini@slartibartfast ~]$ curl -X POST -d 'The quick brown fox jumps over the lazy dog' http://test.ceresini.com/contains_all_chars.sh
{"error": null, "result": true}
# Sample string that doesn't contain all alphabet characters
[jceresini@slartibartfast ~]$ curl -X POST -d 'This string does not contain many letters of the alphabet' http://test.ceresini.com/contains_all_chars.sh
{"error": null, "result": false}
# Hitting API endpoint with GET method
[jceresini@slartibartfast ~]$ curl http://test.ceresini.com/contains_all_chars.sh
{"error": "Invalid http method", "result": null}
URL: '/contains_all_chars_a' Method: POST Data params: Plain text Details: Uses python's built-in [set].issubset function to see if the set of lowercase latin alphabet characters is a subset of the posted data
Example response:
{ "error": null, "result": True }
Example use:
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi.txt" http://test.ceresini.com:5000/contains_all_chars_a
{"result": true, "error": null}
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi-no-z.txt" http://test.ceresini.com:5000/contains_all_chars_a
{"result": false, "error": null}
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi-allcaps.txt" http://test.ceresini.com:5000/contains_all_chars_a
{"result": false, "error": null}
URL: '/contains_all_chars_a' Method: POST Data params: Plain text Details: Interates over each character of the posted data to see if it contains each lowercase character in the latin alphabet. Returns as soon as it has seen each character once.
Example response:
{ "error": null, "result": True }
Example use:
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi.txt" http://test.ceresini.com:5000/contains_all_chars_b
{"result": true, "error": null}
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi-no-z.txt" http://test.ceresini.com:5000/contains_all_chars_b
{"result": false, "error": null}
[jceresini@slartibartfast]$ curl -H "Content-type: text/plain" -d "@testfiles/doi-allcaps.txt" http://test.ceresini.com:5000/contains_all_chars_b
{"result": false, "error": null}