All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Problems caused by Skip marks and fails in
--max-errors.
- Skip for
--max-errorsis applied oncallinsteadsetup.
- Option
--max-errorsto stop running the suite after specified number of subsequent errors.
- Upgraded Firebird driver and base to v2.x
- Fixed problem with utf8 db filenames in
Database.
- Dependency on
firebird-basechanged to "~=1.8" - Updated
hatchconfiguration
- Fixture
existing_db_factoryto directly use database fromdatabasessubdirectory. It's not intended for use in Firebird QA, but it's necessary for other plugin users.
- Report test error also in cases when unexpected stderr is returned from tool execution
while
returncodeis zero. - Select test marked for current platform also when it's not marked for Firebird version.
- Problem with ndiff in assert
- Remove fix for #21. The error was not caused by pytest 8.0, but by
Errorexception fromfirebird-basepackage that masked the absence of__notes__attribute frompytest. Dependency to pytest reverted to>=7.4.
- Updated documentation.
- Fix for #21. Dependency to pytest changed from
>=8.0.0to~=7.4. Other dependecies changed from>=to~=.
- Switch from
setuptoolstohatch. - Updated dependencies.
-
Added cache for empty databases. This works transparently and does not require any special configuration. Databases are stored in
dbcachesubdirectory (created automatically) for combination of ODS + page size + SQL dialect + character set.Files in
dbcachedirectory could be removed as needed (including whole directory) to fore creation of new database.Cache is enabled by default. Use new --disable-db-cache option to disable it.
- Added
--driver-configoption to specify different filename for driver configuration.
- Trace session support in plugin now uses service query with timeout (provided by
firebird-driver 1.8.0) and terminates the trace thread gracefuly even if terminating trace session fails.
- When database initialization script fails, the XML output is extended with
dbinit-stderrproperty that containsstderroutput with errors reported by ISQL.
- Uregistered bug in trace.TraceConfig - redundant
flagsdefinition.
- Added
Mappingandmapping_factory.
- Variable
test_cfgrenamed toQA_GLOBALS.
- Added support for configuration of tests. A
configparser.ConfigParserinstance is available astest_cfg. This instance is initialized with values from filetest_config.inilocated infilessubdirectory.
- Fix problem with database init script. Now it uses the database charset instead default UTF8. The UTF8 is used only when database charset is not specified.
- Added
encryptionmarker to mark test as requiring the encryption plugin
- Package
psutilis now a dependency, installed automatically with plugin.
-
Added possibility to use databases aliases. The
db_factory()parameterfilenameis now handled as database alias if it starts with#, for example#employeemeans aliasemployee. The alias must be defined indatabases.conffile.When filename is an alias, the
Database.db_pathproperty does not contain fullpathlib.Pathto the database, but this database alias.
-
To simplify portable use of databases with special configuration via
databases.conf, the plugin initialization now ensures empty subdirectoryQAin Firebird sample directory. To define your test databases indatabases.conf, use next pattern:my_db = $(dir_sampleDB)/QA/my-db.fdb { ... }On plugin initialization, the
QAsub-directory is first emptied and removed, and then newly created. On non-Windows, full privileges are granted.
- Added possibility to specify user, password and role in
Action.connect_server()and.Action.trace()
- DataList is now generic class.
- DataList.extract() has new 'copy' argument.
- Fixed problem with service encoding
- Fixed problem with tags in User
- Explicit
Optionaltyping. - Added support for both
encodingandencoding_errorsinAction.connect_server()andAction.trace().
Initial release.