Commit Graph

203 Commits

Author SHA1 Message Date
Adrien Marquès a54c428670 Test json: add a check with invalid json (no parameter is parsed)
continuous-integration/drone/push Build is passing Details
continuous-integration/drone/pr Build is passing Details
2019-11-19 17:00:11 +01:00
Adrien Marquès 0a470dbd40 Test json body parameters
continuous-integration/drone/push Build is passing Details
2019-11-19 16:57:23 +01:00
Adrien Marquès 24b0eaa68b Test with url encoded body parameters 2019-11-19 16:53:02 +01:00
Adrien Marquès da1ee37612 Test store agains Query parameters
continuous-integration/drone/push Build is passing Details
2019-11-19 16:18:56 +01:00
Adrien Marquès f272f880e8 Test store with uri arguments 2019-11-19 16:18:50 +01:00
Adrien Marquès 36008db9e5 Test empty store -> fix 2019-11-19 16:18:45 +01:00
Adrien Marquès 8a1144a187 merge parseParameter 2019-11-19 16:18:27 +01:00
Adrien Marquès f247581395 fix badge
continuous-integration/drone/push Build is passing Details
2019-11-19 16:16:42 +01:00
Adrien Marquès 97de8a1f28 remove jenkins support 2019-11-19 16:16:42 +01:00
Adrien Marquès 60a1849cf8 add builtin.bool test + make other types that allow 'string' allow '[]byte' as well 2019-11-19 16:16:42 +01:00
Adrien Marquès 9affef4cd7 add ci support 2019-11-19 16:16:42 +01:00
Adrien Marquès 712c047096 add startup logs
Log aicra configuration 'METHOD /PATH' when creating the instance
Log mapped handlers before starting listening

To know when we start listening (was transparently handled by http.ListenAndServer) ; added a wrapper around 'Server' (i.e. httpServer) that fulfills the http.Server interface
2019-11-19 16:16:42 +01:00
Adrien Marquès aa9ef778eb Update readme 2019-11-19 16:16:42 +01:00
Adrien Marquès 9bf7f24ec9 feat: typechecks: tests for 'float64' 2019-11-19 16:16:42 +01:00
Adrien Marquès 4c5f13933c feat: typechecks: tests for 'uint' + add string repr for 'int' 2019-05-06 18:34:21 +02:00
Adrien Marquès 4e36adfcc9 readme: add ci badge 2019-05-06 18:34:21 +02:00
Adrien Marquès f53dfcbf62 ci: create jenkins file 2019-05-06 18:34:11 +02:00
Adrien Marquès be84c86172 fix: use t.Run in tests instead of for{} with i 2019-05-05 19:01:54 +02:00
Adrien Marquès 21f48a65ee feat: parallelize tests +ci 2019-05-05 19:01:54 +02:00
Adrien Marquès bf3e651c2c ref: clean comments and make errors constants 2019-05-05 19:01:54 +02:00
Adrien Marquès 0780e8dd33 feat: update string type checker | test: string, int, float, any typecheckers
feat: string type checker pre-process min,max/fixed length(s) before returning the CheckerFunc

feat: add typecheckers for 'any', 'float' and 'int' (managing number overflows)
2019-05-05 19:01:54 +02:00
Adrien Marquès bafaad97e6 clean: request param now uses internal const error 'cerr' 2019-05-05 19:01:54 +02:00
Adrien Marquès a83d077569 feat: add builtin types [int, uint] | fix request param getters | add request param getters [GetFloat, GetInt, GetUint, GetStrings] with permissive possible types and 'automatic' conversion 2019-05-05 19:01:54 +02:00
Adrien Marquès eb5ce4c0d0 fix: semantic renaming : internal.config.Method.Permission is now Scope 2019-05-05 19:01:54 +02:00
Adrien Marquès 189d3b40a6 fix: semantic (comments) renaming : 'controller' to 'service', more explicit names 2019-05-05 19:01:54 +02:00
Adrien Marquès 6afedf190f ref 1: clean server.go code + response implements http.Handler + add generic getter on request params Get() (interface{},error) 2019-05-05 19:01:54 +02:00
Adrien Marquès 0e498607ba clean 2019-05-05 19:01:54 +02:00
Adrien Marquès 0912e07f4f fix: pass error arguments as values not array + set header after
WriteHeader()
2019-05-05 19:01:54 +02:00
Adrien Marquès 7a87288876 fix: rename 'WrapError' to 'SetError' + shadow response error + response implements Error() 2019-05-05 19:01:54 +02:00
Adrien Marquès 1e4476ced5 feat: rename 'Error.Put' to 'SetArguments' with n >= 1 arguments + move 'WrapError' to response 2019-05-05 19:01:54 +02:00
Adrien Marquès b9ca1801bd fix: rename 'NewError' to 'WrapError' 2019-05-05 19:01:54 +02:00
Adrien Marquès b9f240b86b feat: fix error creation to bind arguments directly + add optional error argument in NewResponse() 2019-05-05 19:01:54 +02:00
Adrien Marquès 4e25c647b2 feat: add status code in response 2019-05-01 16:40:26 +02:00
Adrien Marquès d0f5277bf4 fix: prefix service path with '/' if missing 2019-05-01 16:28:16 +02:00
Adrien Marquès 16ea60f2aa fix: add data to 'ErrorUncallableMethod' and 'ErrorUncallableService' 2019-05-01 16:20:32 +02:00
Adrien Marquès 98ae854251 feat: add scope to request 2019-05-01 15:56:18 +02:00
Adrien Marquès cd2bcdd8bc ref 0: first working version ; totest 2019-05-01 15:14:49 +02:00
Adrien Marquès 7e66b6ddd5 ref 0: big refactor of concerns between api request, server, etc 2019-05-01 13:44:45 +02:00
Adrien Marquès 0a63e9afcc removed commands 2019-05-01 11:29:04 +02:00
Adrien Marquès 16d3399ee9 ref 0: internal.checker renamed typecheck (no more internal) 2019-05-01 11:28:55 +02:00
Adrien Marquès 8d45d3241b ref 0: internal.checker defines an interface ; default types are in internal.checker.builtin 2019-05-01 11:23:05 +02:00
Adrien Marquès 8109f57d15 ref 0: internal.apidef becomes internal.config + refactoe 2019-05-01 10:29:23 +02:00
Adrien Marquès a63e227538 ref 0: internal/request 2019-05-01 00:02:28 +02:00
Adrien Marquès b428c75f25 use go modules 2019-05-01 00:01:42 +02:00
Adrien Marquès 0eee615aea rename 'internal/api' to 'internal/apidef' (api definition) 2018-10-07 11:40:35 +02:00
Adrien Marquès f157785cff update / fix readme 2018-10-07 11:26:31 +02:00
Adrien Marquès 049400e2be rename 'response' to 'api' 2018-10-07 11:23:00 +02:00
Adrien Marquès 5e7ece3f30 fix mispelled words 2018-10-07 11:14:54 +02:00
Adrien Marquès d590d31327 add exported fields' comments 2018-10-07 11:14:04 +02:00
Adrien Marquès 104111b02e remove useless additional doc 2018-10-04 17:05:43 +02:00