Commit graph

182 commits

Author SHA1 Message Date
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
33286e648a Update repo to add vattle org paths 2016-08-09 17:59:30 +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
Aaron L
89ec1cfdb7 Delete useless duplicate method. 2016-08-08 17:36:37 -07:00
Patrick O'brien
fa8e431349 Add ReloadAll for ObjectSlice
* Fix RandomizeSlice bug overwriting blacklisted columns
* Add GroupAt param to param flags generator
2016-08-08 23:30:29 +10:00
Aaron L
0b7e6fc507 Seperator -> Separator 2016-08-08 00:42:13 -07:00
Aaron L
f6d113a5ef GroupBy and Having work now 2016-08-08 00:28:01 -07:00
Aaron L
d999c7b4d7 Fix failing test.
- Let's not be smart about renames in Bind(), just do the normal thing
  and bind to whatever the user's asked us to.
2016-08-08 00:20:19 -07:00
Aaron L
44cf647d05 Rewrite Find using normal sql 2016-08-07 23:36:11 -07:00
Aaron L
989bece6b3 Restore Exec/One/All 2016-08-07 18:16:34 -07:00
Aaron L
b3ba8462d9 Fix inner join query mod 2016-08-07 18:12:13 -07:00
Aaron L
113754d38b Finish bind tests
- One test failing because lack of idMap usage
2016-08-07 18:07:37 -07:00
Aaron L
ee2b4e7990 Rewrite bind.
- Break bind down into separate functions
- Implement naming inference in bind for multiple tables
- Make One and All take the same code path mostly
2016-08-07 18:07:37 -07:00
Aaron L
1ba2333658 Add test for a query with writeStars 2016-08-07 18:07:37 -07:00
Aaron L
6596868cb8 Change join structure to truly support any join
- Also normalize the "," vs ", " in query generation
2016-08-07 18:07:37 -07:00
Aaron L
162746526c Add min/max/sum/avg to the query gen 2016-08-07 18:07:37 -07:00
Aaron L
5541b4dce9 Reorganize things before tearing apart 2016-08-07 18:07:37 -07:00
Aaron L
8298da6f48 Refactor GetStructPointers 2016-08-07 18:07:37 -07:00
Aaron L
307fe4919a Add parsing routine for SQL from/join statements
- Bonus: Add yaml/toml struct tags for models
2016-08-05 23:51:13 -07:00
Patrick O'brien
feb85a2a44 Finish upsert and upsert tests
* Fix find bug in query generator
2016-08-05 12:59:40 +10:00
Patrick O'brien
8dbf322754 Add Update back for UpdateAll 2016-08-05 00:26:39 +10:00
Patrick O'brien
70b2dcfbb2 Boilerplate for upsert 2016-08-05 00:25:35 +10:00
Aaron L
f98ff568fb Remove unused fields 2016-08-03 22:44:57 -07:00
Aaron L
9503acaf8e Missed some compilation errors 2016-08-03 22:28:04 -07:00
Aaron L
1a1a025b58 Add append versions of boil query helpers 2016-08-03 22:22:17 -07:00
Aaron L
48e14f4fd8 Add multiple from statements. 2016-08-03 21:50:26 -07:00
Patrick O'brien
afedc92224 Change Enforced to Validated 2016-08-03 14:22:32 +10:00
Patrick O'brien
c7c0fe5c0d Add provision for enforced types, eg uuid
* Add enforced to column data
* Add enforced list to driver
* Fix bug in TitleCase (now uses regexp)
* Fix broken zero-value enforced type inserts by using RandomizeEnforcedStruct
2016-08-03 12:05:05 +10:00
Patrick O'brien
39fe91f2cb Add RandomizeEnforcedStruct
* Fix broken Select QM test
2016-08-03 10:53:34 +10:00
Patrick O'brien
775c5ba369 Fix IdentQuote bug, add Reload helpers 2016-08-02 20:00:00 +10:00
Patrick O'brien
fb8540af1a Change to IdentQuote, add IdentQuote to Select QM 2016-08-02 13:25:02 +10:00
Aaron L
757aaf3a4d Fix tests for uuid string types 2016-07-31 21:56:49 -07:00
Aaron L
fd7cb01b89 Add an order by query 2016-07-31 21:05:03 -07:00
Patrick O'brien
edecf1b704 Add "count as" query fixture 2016-08-01 13:06:51 +10:00
Aaron L
b8c28c7cf8 Add offset and limit generation 2016-07-31 19:21:06 -07:00
Patrick O'brien
ba5034b7ee Fix things 2016-07-19 15:36:26 +10:00
Patrick O'brien
f713e041ad Add sql query mod, finish or querymod
* Add comments to kill lint errors
2016-07-19 14:07:12 +10:00
Patrick O'brien
f45d137f5f Added panic functions
* Fixed linter errors
* Added lots of missing comments
* Fixed broken boil tests
* Skipped unfinished functions instead of error
2016-07-16 21:22:57 +10:00
Patrick O'brien
a559738d59 Added boil error helpers 2016-07-16 15:38:51 +10:00
Patrick O'brien
81883d5f75 Finish update tests
* Add SetMerge helper
* Add quotes around all column names in statements
* Fix blacklist bug in RandomizeStruct
* Split up update helper
2016-07-15 20:14:47 +10:00
Patrick O'brien
c424780458 Refactored and finished insert tests 2016-07-14 15:09:05 +10:00
Patrick O'brien
4036786b6a Got insert testing in a better state
* Split up insert function for testing
* Add DBType to global state
* Move test reflection helpers to testing.go
* Add incremental seed to randomizeField to avoid duplicate constraint
  error messages
* Fixed Viper SSL default bug
* Fixed pgpass SSL inclusion bug
* Add MakeStringMap strmangle helper
* Change test errors from error to skip
2016-07-14 02:51:40 +10:00
Aaron L
7863284e61 Rename Creator interface. 2016-07-09 09:31:50 -07:00
Patrick O'brien
013b3ae0f8 Added more reflect helpers 2016-07-09 02:39:36 +10:00
Patrick O'brien
08d168605f Added more insert test, added comments
* Added IsZeroValue helper
2016-07-08 01:59:07 +10:00
Patrick O'brien
7a0b84848f Add more tests to insert template tests
* Add helpers to assist with template tests
* Change null []byte from string to []byte
2016-07-06 16:02:35 +10:00
Patrick O'brien
1508d85cb6 Finish Bind test, renamed querymods package
* Rename querymods qs package to qm
* Refactor comparing values in template tests to remove redundancy
2016-06-15 00:01:28 +10:00
Patrick O'brien
0bb847c0da Refactor Where clause, add to insert builder
* Fix Find template comparison, replace DeepEqual
2016-06-12 07:55:23 -07:00
Aaron L
d97e826265 Fix some documentation and ugly constant placement 2016-06-11 15:09:46 -07:00
Patrick O'brien
98e0b1f2ad Fixed unit test comparison bug for Null types
* Set randomized field values to zero value for objects with Valid false
  This ensures the types will match the zero values returned from the
  db.

* Reverted make statements to proper initialization format
2016-06-11 18:30:56 +10:00
Patrick O'brien
ca9d296f99 Change randomizeField decimals to X.X precision
* This was done to reduce conflicts with DB constraints on decimal cols
* when comparing data objects in the unit tests
2016-06-11 01:18:01 +10:00
Patrick O'brien
8cc14ce48f Change RandomizeStruct float to single decimal
* Now only uses single decimal precision (0.0-0.9) to avoid conflicting
* with any database decimal constraints and causing data mismatch.
2016-06-11 00:57:59 +10:00
Patrick O'brien
e99bb09856 Added finisher template tests
* Added randDate function
2016-06-11 00:22:08 +10:00
Patrick O'brien
9ede42c577 Added args to delete query builder
* Fixed delete query builder WHERE bug
* Finished Delete template tests
2016-06-10 15:20:26 +10:00
Patrick O'brien
ecb20cca4a Added RandomizeSlice function 2016-06-10 12:09:48 +10:00
Patrick O'brien
1e412cec74 Added COUNT function to select query builder 2016-06-10 09:43:45 +10:00
Patrick O'brien
7aba7104a5 Fix null package imports, finish Bind
* Fix randomizeStruct time randomization
* Defer close sql.Rows
* Begin Delete test template
2016-06-08 15:45:34 +10:00
Patrick O'brien
a20574110c Added SortByKeys to insert 2016-06-07 17:08:00 +10:00
Patrick O'brien
d0b494600e Fixed BuildQuery test 2016-06-07 16:45:06 +10:00
Patrick O'brien
8a7926664c Removed null for null-extended
* Fixed broken RandomizeStruct test
2016-06-07 16:42:19 +10:00
Patrick O'brien
37a333f6ff Added SortByKeys
* Fixed slice allocations in strmangle helpers
* Removed duplicate commaList function
2016-06-07 16:21:00 +10:00
Patrick O'brien
4ad069f64d Finish BindAll implementation 2016-06-07 14:38:17 +10:00
Patrick O'brien
3e467f2329 Fixed some bugs, added GetSelect
* Begun BindAll, Bind and BindOne
2016-06-05 16:13:38 +10:00
Patrick O'brien
3152eed170 Added debug mode, test singles
* Where statement OR/AND support
* Added null-extended library to use different data types
* Added disable triggers function for test main
2016-06-03 07:07:51 +10:00
Patrick O'brien
c2541ea56e Begun implementing all tests
* Added randomizeStruct
* Added under development warning to readme
* Restructured the reflection stuff a bit
* Added a testmangle.go file for template test functions
2016-05-17 20:00:56 +10:00
Patrick O'brien
019ab3b502 Finished finishers 2016-05-10 20:20:29 +10:00
Patrick O'brien
f059bdebf4 Finished insert template
* Removed functions in helpers not being used
2016-05-02 16:34:25 +10:00
Patrick O'brien
a957bc3836 Changed From qmod to Table, added default values
* Added drivername to tplData
2016-04-26 19:27:00 +10:00
Patrick O'brien
c17e48c14a Moved template functions to strmangle package
* Finished Find and FindX
2016-04-25 11:43:09 +10:00
Patrick O'brien
ba8793ec1a Fixed quotating bug for primary keys 2016-04-24 15:33:05 +10:00
Patrick O'brien
9c493810ec Finished most of delete functions
* Fixed some template errors
* Added IN helpers
2016-04-23 21:54:24 +10:00
Patrick O'brien
6d8706c07d Added execquery implementations 2016-04-20 23:03:33 +10:00
Patrick O'brien
2abe35e6f9 Moved Apply back to query mods
* Added tests for query file
2016-04-20 22:51:04 +10:00
Patrick O'brien
2fc2a36306 Begin query building
* Added golden fixtures
2016-04-19 15:31:07 +10:00
Patrick O'brien
dc50c0d42c Made qs package, added single templates support 2016-04-19 12:02:32 +10:00
Patrick O'brien
95d91f17f3 Added bind checkType function
* Added select and join querymod
2016-04-16 17:25:00 +10:00
Patrick O'brien
4b12c849fc Added some querymods
* Added finishers that are broken
* Added some template stuffs
* Added a TestTemplates file output line thingy
2016-04-16 15:17:25 +10:00
Patrick O'brien
d89d23e673 Began implementing the ORM prototype
* Hooks, query mods, and query
* Update and UpdateX
2016-04-13 23:51:58 +10:00
Patrick O'brien
9d41861e90 Added Update commands 2016-03-19 16:22:10 +10:00
Patrick O'brien
0768a89aa6 Added helpers, select to DB interface and renames
* Added select and where helpers for the templates
  - These run at run time

* Added select to the boil DB interface
* Renamed some of the broken template names and fixed some templates
2016-03-16 17:04:26 +10:00
Aaron
80e03dc3f7 Fix DBTable 2016-03-01 07:53:56 -08:00