aboutsummaryrefslogtreecommitdiff
path: root/common
AgeCommit message (Collapse)AuthorFilesLines
2011-10-27Rename typedef type for clarityConstantin Michael2-4/+5
2011-10-27Temporarily exclude query test 14 from Oracle test suiteConstantin Michael1-13/+15
2011-10-27Simplify LOB column query testsConstantin Michael3-62/+67
2011-10-27Refactor pre-processor directives used to realize Oracle identifier quotingConstantin Michael1-7/+3
2011-10-27Revert to manually quoting Oracle identifiers where necessaryConstantin Michael3-24/+35
2011-10-26Shorten inheritance test table prefix to avoid name collisionsConstantin Michael1-1/+1
2011-10-26Remove temporary makefile overrides for OracleConstantin Michael1-16/+0
2011-10-26Add BLOB comparison and null predicate test cases to query testConstantin Michael3-53/+119
2011-10-26Temporarily disable query test 14Constantin Michael1-13/+13
2011-10-26Use CLOB instead of TEXT for Oracle query testConstantin Michael1-1/+5
2011-10-26Add Oracle traits implementation for query testConstantin Michael2-0/+62
2011-10-26Quote schema object identifiers for Oracle where necessaryConstantin Michael6-28/+161
Oracle converts all alphabetical characters in unquoted schema object identifiers to uppercase. This behaviour cannot be disabled.
2011-10-26Get rid of common_ prefix in query testBoris Kolpackov1-1/+1
2011-10-24Enable ON DELETE CASCADE-based checks for MySQLBoris Kolpackov1-6/+0
Now that we generate proper foreign keys for containers.
2011-10-24Add t_ prefix to all the common tests that conflict with examplesBoris Kolpackov8-20/+20
2011-10-21Add test_ prefix to view test since it conflicts with view exampleBoris Kolpackov3-15/+15
2011-10-21Shorten table prefixesBoris Kolpackov2-2/+2
2011-10-21Rename common/const test to common/const-objectBoris Kolpackov5-5/+5
2011-10-21Add support for const data membersBoris Kolpackov7-13/+451
Const data members are automatically treated as readonly. New test: const-member.
2011-10-21Add support for readonly membersBoris Kolpackov5-0/+504
New pragma: readonly. New test: readonly.
2011-10-21Remove common_ from all table_prefix arguments in common testsConstantin Michael27-56/+45
2011-10-21Improve temporary makefile layoutConstantin Michael1-24/+28
2011-10-21Add common tests for OracleConstantin Michael10-30/+50
Due to the 30 character limit imposed by Oracle on identifiers, some of the common tests code and/or makefiles had to be modified.
2011-10-02Handle object pointers when comparing view and object data member typesBoris Kolpackov2-5/+37
Also issues an error if an object member associated with a view member is transient or inverse.
2011-10-02If query substituting placeholder is empty, pass true expression insteadBoris Kolpackov2-3/+3
This allows uniform usage of views both with and without any extra conditions. Also optimize some common cases so that we don't have useless WHERE TRUE clauses or (...) AND (TRUE) expressions.
2011-09-27Add support for associating tables with viewsBoris Kolpackov2-7/+63
2011-09-22Remove NDEBUG macro from VC project; tests always need enabled assert()1.6.0.a2Boris Kolpackov2-4/+4
2011-09-21Use int instead of size_t for NULL-able valueBoris Kolpackov1-2/+2
In case of nullable<size_t> the ODB compiler is unable to determine that the wrapped type is size_t. This results in 64-bit integer being stored and 32-bit being loaded. This interacts badly with PG for some reason.
2011-09-21Rework const object handlingBoris Kolpackov2-14/+12
Now objects are always loaded as non-const and the object cache in session treats all objects as non-const.
2011-09-21Add prefix to table nameBoris Kolpackov1-1/+2
2011-09-20Change query syntax to use . for composite and -> for object pointer accessBoris Kolpackov8-20/+45
Also make non-inverse query columns act as both an object pointer and a normal column. The latter allows us to use natural expressions such as query<employee>::employer.is_null ().
2011-09-16Support for views; integrated partBoris Kolpackov2-65/+723
2011-09-09Add test for queries involving object relationshipsBoris Kolpackov5-19/+444
2011-09-09New templated query_columns architectureBoris Kolpackov1-1/+2
We also now use the correct separate "role"-base join approach instead of having a single merged join for each table.
2011-09-09Vary members order to improve coverageBoris Kolpackov1-5/+5
In particular, the test now catches a bug in PG type oid generation.
2011-09-06Correct view testBoris Kolpackov1-1/+0
2011-09-05Support for views; native partBoris Kolpackov5-0/+409
2011-08-28Add wrapper support for containersBoris Kolpackov2-7/+62
2011-08-28Add wrapper support for composite valuesBoris Kolpackov2-2/+111
NULL semantics for composite values is not yet supported.
2011-08-25Add experimental code (commented out) for DELETE JOIN supportBoris Kolpackov2-2/+52
This would be needed to support object relationships in the erase_query() functionality.
2011-08-24Make tests use unique table prefixesBoris Kolpackov21-21/+30
2011-08-22Add database::erase_query() functionBoris Kolpackov5-0/+258
New test: common/erase-query. Documentation is in Section 3.9, "Deleting Persistent Objects". The current implementation does not work well with the session (no removal of the erased objects from the cache).
2011-08-19Rework query machinery not to use '_' as primary table aliasBoris Kolpackov1-1/+1
Now we always qualify with the actual table name and use the '_' alias for situations where an object is referencing itself.
2011-08-18Fix custom recursive loading in post_load callbackBoris Kolpackov3-6/+50
Before we called the callback while holding the statements locked. As a result, if the callback tried to load another object of this type, it failed. Now we unlock the statements (since we have completely loaded the object from ODB's point of view) and then call the callback. The callback test has been updated to test this situation.
2011-08-04Add support for value wrappersBoris Kolpackov5-1/+236
Wrapper is a class that wraps another type. Examples of wrappers are various smart pointers, holders, etc. A wrapper can be transparent or it can handle the NULL semantics. The new odb::nullable class template is a NULL wrapper that helps to add the NULL semantics to a value type. New test: common/wrapper.
2011-07-22Add pragma for setting type's or member's default valueBoris Kolpackov5-0/+256
New pragma: default. New test: default.
2011-07-19New design for NULL semanticsBoris Kolpackov3-5/+6
Now, instead of being specified as part of the SQL type with the type pragma, there are separate null and not_null pragmas. The not_null pragma was used to control NULL-ness of object pointers. Now the two pragmas are used consistently for object pointers and simple values (and in the future will work for composite values and containers).
2011-07-18Qualify id with table alias to help SQLite outBoris Kolpackov1-1/+1
This hack should go away once we have language-integrated support for ORDER BY.
2011-07-11Order results by id to get consistent test output orderBoris Kolpackov1-1/+1
2011-07-06Remove UNSIGNED SQL qualifier to allow PostgreSQL to pass schema testConstantin Michael1-1/+1