summaryrefslogtreecommitdiff
path: root/test/lib
Commit message (Collapse)AuthorAgeFilesLines
* trying different approaches to test layout. in this one, the testing modulesMike Bayer2012-09-2715-3317/+0
| | | | | | | become an externally usable package but still remains within the main sqlalchemy parent package. in this system, we use kind of an ugly hack to get the noseplugin imported outside of the "sqlalchemy" package, while still making it available within sqlalchemy for usage by third party libraries.
* - profile file is configurableMike Bayer2012-09-262-14/+10
|
* - further reorganization of test suite:Mike Bayer2012-09-2612-1037/+1004
| | | | | | | | | | | - bootstrap and lib move to all absolute imports - testing.py is no longer internally referenced. - requirements move to be a pluggable class which can be overridden. - cleanup in the interests of third party testing, test/lib and test/bootstrap may move to be an independent package.
* - fix empty row insert in fixture, [ticket:2573]Mike Bayer2012-09-261-0/+2
|
* - got firebird runningMike Bayer2012-09-231-0/+2
| | | | | | | | | | | | - add some failure cases - [bug] Firebird now uses strict "ansi bind rules" so that bound parameters don't render in the columns clause of a statement - they render literally instead. - [bug] Support for passing datetime as date when using the DateTime type with Firebird; other dialects support this.
* - use our new Cls.memoized_name._reset(self) method in place of all those ↵Mike Bayer2012-09-231-8/+8
| | | | | | __dict__.pop(), remove reset_memoized
* - add req's for predictable gcMike Bayer2012-09-051-11/+14
|
* - repair for "+driver" specMike Bayer2012-09-041-1/+1
|
* - rework the test exclusions system to work on a consistent themeMike Bayer2012-09-033-512/+446
|
* - fixes for mxODBC, some pyodbcMike Bayer2012-09-022-0/+40
| | | | | | - enhancements to test suite including ability to set up a testing engine for a whole test class, fixes to how noseplugin sets up/tears down per-class context
* force MyISAM in here as newer MySQLs set to innodb by default, which breaks ↵Mike Bayer2012-08-281-0/+2
| | | | a ton of crap
* - fix for pypyMike Bayer2012-08-251-11/+5
| | | | - more oracle fixes
* small tweaks to make insert() behavior more consistent, mostly tests, ↵Mike Bayer2012-08-231-0/+3
| | | | [ticket:2461]
* - [feature] The before_cursor_execute eventMike Bayer2012-08-231-111/+89
| | | | | | | | | fires off for so-called "_cursor_execute" events, which are usually special-case executions of primary-key bound sequences and default-generation SQL phrases that invoke separately when RETURNING is not used with INSERT. [ticket:2459]
* - [feature] The Query.update() method is nowMike Bayer2012-08-201-17/+6
| | | | | | | | | | | | | | | | | more lenient as to the table being updated. Plain Table objects are better supported now, and additional a joined-inheritance subclass may be used with update(); the subclass table will be the target of the update, and if the parent table is referenced in the WHERE clause, the compiler will call upon UPDATE..FROM syntax as allowed by the dialect to satisfy the WHERE clause. Target columns must still be in the target table i.e. does not support MySQL's multi-table update feature (even though this is in Core). PG's DELETE..USING is also not available in Core yet.
* - [feature] The Core oeprator system now includesMike Bayer2012-08-201-20/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the `getitem` operator, i.e. the bracket operator in Python. This is used at first to provide index and slice behavior to the Postgresql ARRAY type, and also provides a hook for end-user definition of custom __getitem__ schemes which can be applied at the type level as well as within ORM-level custom operator schemes. Note that this change has the effect that descriptor-based __getitem__ schemes used by the ORM in conjunction with synonym() or other "descriptor-wrapped" schemes will need to start using a custom comparator in order to maintain this behavior. - [feature] postgresql.ARRAY now supports indexing and slicing. The Python [] operator is available on all SQL expressions that are of type ARRAY; integer or simple slices can be passed. The slices can also be used on the assignment side in the SET clause of an UPDATE statement by passing them into Update.values(); see the docs for examples. - [feature] Added new "array literal" construct postgresql.array(). Basically a "tuple" that renders as ARRAY[1,2,3].
* - fix the labeled column with column_expression() issue, finishes [ticket:1534]Mike Bayer2012-08-182-0/+10
| | | | | | | | | | | - epic documentation sweep for new operator system, making ORM links consistent and complete, full documentation and examples for type/SQL expression feature - type_coerce() explicitly accepts BindParamClause objects - change UserDefinedType to coerce the other side to itself by default as this is much more likely what's desired - make coerce_compared_type() fully public on all types - have profiling run the test no matter what so that the test_zoomarks don't fail when callcounts are missing
* - [feature] To complement [ticket:2547], typesMike Bayer2012-08-171-20/+16
| | | | | | | | | | | | | | | | can now provide "bind expressions" and "column expressions" which allow compile-time injection of SQL expressions into statements on a per-column or per-bind level. This is to suit the use case of a type which needs to augment bind- and result- behavior at the SQL level, as opposed to in the Python level. Allows for schemes like transparent encryption/ decryption, usage of Postgis functions, etc. [ticket:1534] - update postgis example fully. - still need to repair the result map propagation here to be transparent for cases like "labeled column".
* - we're going to attempt to get the type/operator system to eat its own ↵Mike Bayer2012-08-161-13/+6
| | | | | | | | dogfood and use the type-based comparator in all cases. will attempt to remove the _adapt_expression() method entirely as this represents an incomplete and redundant system (though it might be a lot faster)
* - all tests passMike Bayer2012-08-131-11/+8
|
* - develop new system of applying custom operators to ColumnElement classes. ↵Mike Bayer2012-08-131-1/+1
| | | | | | resembles that of the ORM so far.
* fix profiles, no cext, somehow got ran with c ext partially present or somethingMike Bayer2012-08-111-2/+2
|
* - update file textMike Bayer2012-08-112-13/+6
|
* - this is a refcount testMike Bayer2012-08-111-0/+1
|
* - add 2.5 callcountsMike Bayer2012-08-111-0/+17
|
* - adjustmentsMike Bayer2012-08-112-7/+212
| | | | - OK lets try again...
* OK! let's turn this around completely. Forget making a single count acrossMike Bayer2012-08-112-139/+280
| | | | | | all platforms. let's instead store callcounts for *all* observed platforms in a datafile. Will try to get enough platforms in the file for jenkins to have meaningful results. for platforms not in the file, it's just skiptest.
* adjustmentsMike Bayer2012-08-111-0/+6
|
* final cleanupMike Bayer2012-08-101-3/+15
|
* more adjustmentsMike Bayer2012-08-091-2/+18
|
* - a new approach to profiling where we attempt to strip outMike Bayer2012-08-092-158/+131
| | | | | | parts of the pstats that are idiosyncratic to different platforms. the goal is no per-version assertions on tests, version differences in theory would go into the list of profiling exceptions.
* - [bug] Improvements to joined/subquery eagerMike Bayer2012-08-061-0/+3
| | | | | | | | | loading dealing with chains of subclass entities sharing a common base, with no specific "join depth" provided. Will chain out to each subclass mapper individually before detecting a "cycle", rather than considering the base class to be the source of the "cycle". [ticket:2481]
* -whitespace bonanza, contdMike Bayer2012-07-285-19/+19
|
* - [feature] Connection event listeners canMike Bayer2012-07-181-10/+10
| | | | | | now be associated with individual Connection objects, not just Engine objects. [ticket:2511]
* - move cte tests into their own test/sql/test_cte.pyMike Bayer2012-06-251-0/+4
| | | | | | | | | | - rework bindtemplate system of "numbered" params by applying the numbers last, as we now need to generate these out of order in some cases - add positional assertion to assert_compile - add new cte_positional collection to track bindparams generated within cte visits; splice this onto the beginning of self.positiontup at cte render time, [ticket:2521]
* need some default dialect in hereMike Bayer2012-06-201-1/+0
|
* dbs like oracle can't handle these tests since we aren't applying a sequenceMike Bayer2012-06-161-0/+15
| | | | to the reflected table
* - [bug] The ResultProxy methods inserted_primary_key,Mike Bayer2012-06-161-0/+8
| | | | | | | | | | | | last_updated_params(), last_inserted_params(), postfetch_cols(), prefetch_cols() all assert that the given statement is a compiled construct, and is an insert() or update() statement as is appropriate, else raise InvalidRequestError. [ticket:2498] - ResultProxy.last_inserted_ids is removed, replaced by inserted_primary_key.
* - [bug] Dialect no longer emits expensive serverMike Bayer2012-05-241-2/+2
| | | | | | collations query, as well as server casing, on first connect. These functions are still available as semi-private. [ticket:2404]
* most of the drizzle docs are copy/pasta, let's just point users to the mysql ↵Diana Clarke2012-04-021-2/+2
| | | | | | docs and enhance as questions arise - see #2385
* - add __table_cls__ option to declarative, not publicized yet, is for the momentMike Bayer2012-03-121-3/+5
| | | | | | | | | | | | | | for the benefit of the test.lib.schema package. - use test.lib.schema.Table for the table within test.lib.fixtures.DeclarativeMappedTest - [bug] Removed the check for number of rows affected when doing a multi-delete against mapped objects. If an ON DELETE CASCADE exists between two rows, we can't get an accurate rowcount from the DBAPI; this particular count is not supported on most DBAPIs in any case, MySQLdb is the notable case where it is. [ticket:2403]
* - expand the check to determine if a selectable column is embeddedMike Bayer2012-02-291-2/+41
| | | | | | | | | | in the corresponding selectable to take into account clones of the target column. fixes [ticket:2419] - have _make_proxy() copy out the _is_clone_of attribute on the new column so that even more corresponding_column() checks work as expected for cloned elements. - add a new test fixture so that mapped tests can be specified using declarative.
* - [feature] Added support for the "isolation_level"Mike Bayer2012-02-121-1/+1
| | | | | | | parameter to all MySQL dialects. Thanks to mu_mind for the patch here. [ticket:2394] - add documentation examples for mysql, postgresql - pep8ing
* - add a context manager availble via Engine.begin()Mike Bayer2012-02-121-0/+20
| | | | | | - add a test suite for all the Engine/Connection/TLEngine transaction/begin helpers/context managers - update docs
* mark this test as unsupported before 2.6, there's some unicodeMike Bayer2012-01-281-1/+1
| | | | issue I'm not exactly sure of what nature it is
* - [feature] Dialect-specific compilers now raiseMike Bayer2012-01-281-2/+2
| | | | | | | | CompileException for all type/statement compilation issues, instead of InvalidRequestError or ArgumentError. The DDL for CREATE TABLE will re-raise CompileExceptions to include table/column information for the problematic column. [ticket:2361]
* - [bug] Raise an exception if xyzload_all() isMike Bayer2012-01-281-0/+3
| | | | | used inappropriately with two non-connected relationships. [ticket:2370]
* - [bug] Fixed issue where modified session stateMike Bayer2012-01-271-1/+5
| | | | | | | | | | | | | | established after a failed flush would be committed as part of the subsequent transaction that begins automatically after manual call to rollback(). The state of the session is checked within rollback(), and if new state is present, a warning is emitted and restore_snapshot() is called a second time, discarding those changes. [ticket:2389] - repaired testing.assert_warnings to also verify that any warnings were emitted
* - rework the test suite to make use of SkipTest for tests skipped, ↵Mike Bayer2012-01-222-17/+5
| | | | | | | unsupported, etc. so that we can get an accurate picture what's really running/not, what's installed on jenkins, etc. Tested in cpython 2.7 so far, we'll see what jenkins says about other platforms
* - [bug] Fixed inappropriate usage of util.py3kMike Bayer2011-12-151-1/+1
| | | | | | | flag and renamed it to util.py3k_warning, since this flag is intended to detect the -3 flag series of import restrictions only. [ticket:2348]