Commit graph

120 commits

Author SHA1 Message Date
Aaron L
625dee4648 Fix documentation.
- Fix test failure for ToOneSet
2016-08-28 00:06:33 -07:00
Aaron L
bc71147282 WIP - Trying to fix bugs 2016-08-27 19:10:46 -07:00
Aaron L
f6206ea6b7 Use better errors in setops 2016-08-27 12:13:15 -07:00
Aaron L
ea22d3656c Add more text helpers for ToMany. 2016-08-27 12:00:42 -07:00
Aaron L
1887f23ca5 Finish ToOneSet
- Replace the custom update that actually set every model's relationship
  to the same thing with a real update method so we get logging & hooks
2016-08-26 23:36:57 -07:00
Aaron L
9db43ae3ad Finish ToOneSet 2016-08-26 22:43:50 -07:00
Aaron L
c1962eb7ac Get all the tests running properly 2016-08-26 22:04:49 -07:00
Aaron L
f489e22ab4 Rename Loaded -> R 2016-08-26 21:40:29 -07:00
Aaron L
dc49fa4d59 Align some stuff properly
- Begin tests
2016-08-26 07:59:28 -07:00
Aaron L
6ad467c259 Started relationship set operations 2016-08-25 23:50:45 -07:00
Aaron L
28e485603a Add fast path for binding by caching TitleCase 2016-08-23 23:20:41 -07:00
Aaron L
d130354890 Fix eager loading, off-by-one pointer 2016-08-23 22:07:51 -07:00
Aaron L
509fe44f4e Rename Relationships struct to Loaded 2016-08-22 21:54:02 -07:00
Patrick O'brien
c61ff2aa46 Fix some formatting bugs of generated code 2016-08-21 16:28:47 +10:00
Patrick O'brien
0c44af51a8 Fix name conflict bug in find
* Add more tests to test schema
2016-08-21 16:03:51 +10:00
Patrick O'brien
cd7e45efaa Fix bugs for table only containing composite pkey
* Add more tables to test schema
* Add string slice match helper
2016-08-21 15:44:49 +10:00
Aaron L
c04e0d003a Make relationships only return query objects. 2016-08-18 00:19:15 -07:00
Aaron L
2567a60a25 Rename some files to keep sanity 2016-08-17 23:48:37 -07:00
Aaron L
453858d026 Put the templates in their proper place 2016-08-17 23:26:17 -07:00
Aaron L
92c4e7f8f3 Support many_to_many eager loading properly
- Reorder the where statement in to_many to match eager loading.
2016-08-17 23:09:54 -07:00
Aaron L
fb198cc92c Looking like to_many eager load is done
- Fix to_many join table query
- Fix testing output
- Add debug logging
2016-08-16 22:14:07 -07:00
Aaron L
756281f9fb WIP Debugging eager loading 2016-08-16 22:14:07 -07:00
Aaron L
932f14d26c Fix up some bits in eager load to_many 2016-08-16 22:14:07 -07:00
Aaron L
eae23ae42b Add eager loading for to_many
- Needs tests
2016-08-16 22:14:07 -07:00
Aaron L
d25712f929 Change entire project tests. 2016-08-14 01:58:36 -07:00
Aaron L
180fbb0b8c Remove swaths of metadata for tables in templates 2016-08-13 23:50:40 -07:00
Aaron L
f40688cfe3 Refactor Update & Insert tests.
- Added additional checking to statements for drivers that support a
  number of results affected.
- Changed the way we keep imports around for compare values
2016-08-13 23:38:41 -07:00
Aaron L
efa1fbb80a Big refactor of generated code
- Stop generating helper functions for each model
- Move Insert/Update/Upsert query generation helpers to strmangle
- Add tests for query generation helpers
- Delete a lot of the Insert/Upsert tests that test the query generation
  helpers.
- Use tx for more of the tests.
2016-08-13 21:21:26 -07:00
Aaron L
8a7a9a35e8 Fix the last bits of problems with auto inc pkey 2016-08-13 16:34:02 -07:00
Aaron L
944303f2f5 Properly abstract LastInsertID 2016-08-13 16:34:02 -07:00
Aaron L
ef03225024 Add primary key column gen 2016-08-13 16:34:02 -07:00
Aaron L
ab88d8511d Move string set operations to strmangle
- Delete MakeDBName (unused)
- Rename HasElement to SetInclude
2016-08-13 16:34:02 -07:00
Patrick O'brien
160c6ff0f0 Begin the pain 2016-08-13 16:34:02 -07:00
Aaron L
1875bac7cf Correct improper detection of one-to-one 2016-08-13 15:33:54 -07:00
Patrick O'brien
641a433a2d Fix query in insert 2016-08-14 06:35:43 +10:00
Patrick O'brien
3fb6c1aa48 Convert Delete object to use Exec 2016-08-14 05:07:38 +10:00
Aaron L
2b4508b228 Pass through sql.ErrNoRows for .Find() too 2016-08-13 11:56:59 -07:00
Aaron L
956157d057 Pass through no-rows errors to the user for .One() 2016-08-13 11:42:28 -07:00
Aaron L
1ac3853d3c Refactor some awkward looking bits 2016-08-13 11:39:03 -07:00
Aaron L
5360d3094e Use errors package all over the project
In general:
errors.New("thing") -> errors.New
fmt.Errorf("thing %s", arg) -> errors.Errorf
fmt.Errorf("thing %v", err) -> errors.Wrap
fmt.Errorf("thing %s %v", arg, err) -> errors.Wrapf
2016-08-13 11:37:16 -07:00
Patrick O'brien
8831e8a4b9 Fix debug outputs for all templates 2016-08-14 02:58:18 +10:00
Patrick O'brien
7ae9af702f Add debug output to Exists 2016-08-14 02:19:36 +10:00
Patrick O'brien
6c299c82cb Fix formatting errors 2016-08-14 02:16:10 +10:00
Patrick O'brien
ae198fd759 Fix formatting 2016-08-14 02:07:28 +10:00
Patrick O'brien
d92a439c54 Modify postgres query to get is_unique for indexes
* Remove unused SnakeCase function
* Fix formatting bug in relationship structs
2016-08-13 17:30:55 +10:00
Patrick O'brien
18029166c0 Add FilterColumnsByUnique, finish UpdateAll slice
* Add FilterColumnsByUnique
* Fix lots of broken tests
* Made CompareVals less stupid

Note: UpdateAll tests still broken because Unique
is not being fetched correctly for INDEX types,
it is only working for UNIQUE constraints.
2016-08-11 22:26:49 +10:00
Patrick O'brien
e3f319346f Finish UpdateAll query builder
* Add modifiers to delete builder
* Update golden file tests
* Add startAt to whereClause
2016-08-11 18:23:47 +10:00
Patrick O'brien
99b292b1ee Update query builder to make queries readable
* Finish DeleteAll for slice and query
* Fixed some formatting and comments
2016-08-09 20:19:42 +10:00
Patrick O'brien
2ece7d14f6 Clean up helpers, remove duplicate funcs
* Refactor DeleteAll for slice
2016-08-09 15:57:54 +10:00
Aaron L
8e3c1d41da GenerateParamFlags -> Placeholders
- Rewrite Placeholders to not use as much wizardry and magnetism
2016-08-08 20:19:26 -07:00