Commit Graph

162 Commits

Author SHA1 Message Date
Muhammad Labib Ramadhan 05793eb749 Moved "getModelInstance" function to the outside "parseInclude" function and added README and an "include" test about complex include feature 2016-11-11 09:03:01 +07:00
Muhammad Labib Ramadhan e632f79e2b Added support for include relationship alias (as) and nested includes, fixed wrong joi json validation implementation inside parseInclude() function, fixed some associated routes resulted 404 because of prefix option 2016-11-10 01:46:42 +07:00
Muhammad Labib Ramadhan 6fa9e90ec5 New line at EOF 2016-11-08 08:26:56 +07:00
Muhammad Labib Ramadhan 49d24ea265 Added try catch block and JSON validation logic of relationship/association parser 2016-11-08 08:23:37 +07:00
Muhammad Labib Ramadhan 11306667d6 Refactored codes to not modify get-config-for-method.test.js, moved validationAssociations definition logic from get-config-for-method.js to crud.js, fixed README.md 2016-11-07 08:48:52 +07:00
Muhammad Labib Ramadhan 1977304287 Added README about association filtering 2016-11-04 14:24:01 +07:00
Muhammad Labib Ramadhan a141a38fe5 Fixed getConfig test error about association validation 2016-11-04 14:16:30 +07:00
Muhammad Labib Ramadhan 72452a0088 Added feature to allow filtering relationships/associations based on http://docs.sequelizejs.com/en/latest/docs/querying/#relations-associations 2016-11-04 11:31:56 +07:00
Joey Baker 5ba9d7d261 2.9.1 v2.9.1 2016-11-01 19:10:04 -07:00
Joey Baker 07837ef36c Merge pull request #33 from mdibaiee/add-limit-offset-tests
Add integration tests for limit/offset
2016-11-01 19:09:45 -07:00
Joey Baker 25501bbb10 Test add integration tests for limit/offset
#28
2016-11-01 17:39:35 -07:00
Joey Baker a335471f02 Fix(crud/list) 404 on no results 2016-11-01 17:39:16 -07:00
Joey Baker ce26814f74 Test add a returnsAll scope to player fixture 2016-11-01 17:38:55 -07:00
Joey Baker d1fc6d46e8 2.9.0 v2.9.0 2016-10-31 14:24:12 -07:00
Joey Baker 4e94c7f825 Merge pull request #32 from mdibaiee/more-order-integration
Feat ordering by associated models now works
2016-10-31 14:23:43 -07:00
Joey Baker c289fb2ed4 Feat ordering by associated models now works
It's now possible to order by associated models. This technically might
have worked before b/c we were parsing JSON sent to `order`, but I'm
pretty sure it wouldn't actually work b/c we never grabbed the actual
model to associate by. Regardless, this actually enables things and adds
tests to prove it.

Note: there's a sequelize bug that's poorly reported but definitely
known where `order` with associated models can fail because the sql
generated doesn't include a join. So, I added docs noting that and a
`test.failing` so that we'll be notified when that bug is fixed and can
remove the note.
2016-10-31 12:48:34 -07:00
Joey Baker e1b851f932 Test: add a second mock team
So that we can test complex sorts
2016-10-31 12:41:34 -07:00
Joey Baker 34e37217f1 2.8.0 v2.8.0 2016-10-28 11:28:23 -07:00
Joey Baker 6a80149916 Merge pull request #31 from mdibaiee/code-coverage
Add more integration tests
2016-10-28 11:28:06 -07:00
Joey Baker cb6ea51836 Test add integration tests for scope 2016-10-28 11:22:52 -07:00
Joey Baker 5aec1242db Test add integration tests for ordering lists 2016-10-28 11:22:38 -07:00
Joey Baker 8fb3f2e849 Fix(crud) actually enable multiple orders
This was supposed to work, but adding integration tests I realized it
didn't. #oops
2016-10-28 11:22:05 -07:00
Joey Baker 11e6ff596c Fix(crud) scope now 404s on no results 2016-10-28 11:20:59 -07:00
Joey Baker 6a2290f064 Docs add docs for additional order option 2016-10-28 11:20:12 -07:00
Joey Baker 1daa68e03e Fix(crud) destroyScope sends 404 when not found 2016-10-27 21:03:57 -07:00
Joey Baker 01081db7a3 Test add destroyScope tests 2016-10-27 21:03:32 -07:00
Joey Baker 3b962ce4d8 2.7.3 v2.7.3 2016-10-27 13:20:46 -07:00
Joey Baker f638680e29 Merge pull request #30 from mdibaiee/code-coverage
Add integration tests
2016-10-27 13:20:18 -07:00
Joey Baker 94e9870133 Fix(crud) 404 errors for destroy and destroyAll 2016-10-27 12:33:31 -07:00
Joey Baker 0713f81301 Test add CRUD tests
boosting our test coverage
2016-10-27 12:33:02 -07:00
Joey Baker f49e4daf79 Test fix error checking in include tests #oops 2016-10-27 12:32:36 -07:00
Joey Baker 087e64607c Merge pull request #29 from mdibaiee/code-coverage
Add code coverage
2016-10-26 18:14:37 -07:00
Joey Baker 57f95f8c95 Test(CI) setup code coverage
Also moves ava config to package.json
2016-10-26 18:10:32 -07:00
Joey Baker 10d108878a Chore(deps) install codecov and nyc 2016-10-26 17:24:59 -07:00
Joey Baker eebf7b91f0 2.7.2 v2.7.2 2016-10-26 14:09:42 -07:00
Joey Baker a45a3ab317 Merge pull request #27 from mdibaiee/add-integration-tests
Add integration tests
2016-10-26 14:08:38 -07:00
Joey Baker 7a8cd26dc8 Test add integration tests for ?include 2016-10-26 13:27:13 -07:00
Joey Baker 80d0a74c82 Test add integration tests for route creation 2016-10-26 13:26:56 -07:00
Joey Baker 863aa1d98b Test add fixtures and integration setup 2016-10-26 13:26:39 -07:00
Joey Baker 90f72cb07a Fix(crud) models w/o associations validation 2016-10-26 13:26:15 -07:00
Joey Baker d3976fa44b Fix prefix should default to /, not ''
b/c `route` isn't a valid Hapi route, but `/route` is.
2016-10-26 13:25:27 -07:00
Joey Baker 966b35164f Chore(deps) install dev deps for integration tests 2016-10-26 13:24:27 -07:00
Joey Baker 548a6ecd98 2.7.1 v2.7.1 2016-10-26 11:43:53 -07:00
Joey Baker be993eda40 Merge pull request #26 from mdibaiee/fix-include
Fix(crud) include param lookup now works w/plurals
2016-10-26 11:42:15 -07:00
Joey Baker bcb7861061 Fix(crud) include param lookup now works w/plurals
Previously, {one,many}-to-many relationships with models would result in
`associationNames` that were plural. e.g. `Team` might have many
players and one location. The validation was expecting to see the plural
`Players` and the singular `Location` but Sequelize is expecting the
singular `Player` (`Location` worked fine). This meant that include
lookups would silently fail. This fixes the problem in a backward-
compatible way.

It continues to allow `include=Location` (capitalized) for backward-
compatibility. And now allows and actually does the lookup for
`include=players`, `include=player`, `include=Player`, `include=Players`
lookup relationships.
2016-10-26 11:19:36 -07:00
Joey Baker 07176018b7 Fix(crud) include param can be a string or array 2016-10-26 10:59:02 -07:00
Joey Baker 83eadf0929 Fix: don't build CRUD routes until ready
Previously, we were building the crud routes before we had run through
the association logic. This meant that routes could get created without
a complete list of associations available to it. This is slightly less
performant b/c we need to run through two loops, but ensures that the
full association data is available to all routes.
2016-10-26 10:57:54 -07:00
Joey Baker e318948fe4 2.7.0 v2.7.0 2016-10-21 11:11:24 -07:00
Joey Baker d35b616a13 Merge pull request #25 from mdibaiee/add-filters
Feat add support of limit, offset, order
2016-10-21 11:10:35 -07:00
Joey Baker 8966d7b287 Feat add support of limit, offset, order
Allows passing these as query params to list and scope methods.
2016-10-21 11:07:27 -07:00