create a new session
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -X POST https://orunginal-api.herokuapp.com/users/sign_in -d "{\"user\":{\"email\":\"test@test.com\",\"password\":\"password\"}}"
create a new account/user
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -X POST https://orunginal-api.herokuapp.com/users -d "{\"user\":{\"email\":\"test@test.com\",\"password\":\"password\"}}"
get a user (pretty print in terminal)
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 2' -H 'token: 447hXkTzyj6j19JDcun8' -X GET https://orunginal-api.herokuapp.com/users/2 | python -m json.tool
update a user
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 11' -H 'token: jcqL7ggms3gZu5HSj8ob' -X PUT https://orunginal-api.herokuapp.com/users/11 -d "{\"user\":{\"email\":\"lol@lol.com\", \"name\":\"lol\" ,\"password\":\"password\"}}" | python -m json.tool
get all users
curl -H 'API_KEY: change_me_at_prod1' https://orunginal-api.herokuapp.com/users | python -m json.tool
Destroy a user
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 20' -H 'token: cxjC-2JhQgzzuTzEVDrV' -X DELETE https://orunginal-api.herokuapp.com/users/20 | python -m json.tool
get all circuits
curl -H 'API_KEY: change_me_at_prod1' https://orunginal-api.herokuapp.com/circuits
create a circuit
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 15' -H 'token: ghdKjKG9sUgd2xjfB_7u' -X POST localhost:3000/circuits -d "{\"circuit\":{\"distance\":\"424242\",\"description\":\"c'est mon circuit\", \"note\":\"20\",\"time\":100 , \"users\":[{\"id\":\"15\"}] ,\"points\" : [{\"lat\":\"1\", \"lng\":\"2\"}, {\"lat\":\"1\", \"lng\":\"2\"}]}}"
or
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 15' -H 'token: ghdKjKG9sUgd2xjfB_7u' -X POST localhost:3000/users/15/circuits -d "{\"circuit\":{\"distance\":\"424242\",\"description\":\"c'est mon circuit\", \"note\":\"20\", \"users\":[{\"id\":\"15\"}] ,\"points\" : [{\"lat\":\"1\", \"lng\":\"2\"}, {\"lat\":\"1\", \"lng\":\"2\"}]}}"
get all groups
curl -H 'API_KEY: change_me_at_prod1' https://orunginal-api.herokuapp.com/groups
create a group
curl -v -H 'API_KEY: change_me_at_prod1' -H 'Content-Type: application/json' -H 'Accept: application/json' -H 'user_id: 20' -H 'token: cxjC-2JhQgzzuTzEVDrV' -X POST https://orunginal-api.herokuapp.com/groups -d "{\"group\":{\"name\":\"ccacaca\",\"description\":\"c'est mon groupe\", \"admin_id\":\"20\"}}"
failed api token
curl -v -H 'API_KEY: change_me_at_prod1' https://orunginal-api.herokuapp.com/circuits
push to heroku
git push heroku master
OR
git push develop develop:master
bundle exec rspec
#####Scenarii:
-
un utilisateur cree un compte
-
un utilisateur cree une session
-
un utilisateur detruit une session
-
un utilisateur non enregistré essaie de creer/supprimer/modifier une session
-
un utilisateur supprimer son compte
-
un utilisateur oublie son mdp
-
un utilisateur bloque son compte
-
un utilisateur change son mdp
-
un utilisateur change son email
-
un utilisateur cree un group/circuits
-
un utilisateur joint un group
-
un utilisateur quite un groupe
-
un utilisateur essaie de modifier un groupe
-
un admin modifie un groupe
-
un admin quitte un groupe
-
un admin supprimer un groupe
-
un admin donne son droit d'admin a qqn
-
un utilisateur ajoute un circuits
-
un utilisateur modfifier un circuits ?? # que fait si il y a d'autre user dessus
-
un utilisateur supprmier le circuit ? (cb de user reste il)
- un serveur sans les api key veut consumer l'api
- on recoit un flood d'un utilisateur
- on recoit une alternance forte de 2 ip differentes pour un users ? => invalider la session
- injection