Project

General

Profile

Download (6.56 KB) Statistics
| Branch: | Tag: | Revision:
1
#
2
# NOTE: this is the unitils.properties file for the cdmlib-persistence module
3
# a separate unitils.properties exists for cdmlib-io and for cdmlib-services
4
#
5
#
6
# the list of all properties is found in
7
# http://unitils.org/unitils-default.properties
8
#
9

    
10
### Unitils Modules ###
11
# List of modules that is loaded. Overloading this list is normally not useful, unless you want to add a custom
12
# module. Disabling a module can be performed by setting unitils.module.<modulename>.enabled to false.
13
# If a module's specific dependencies are not found (e.g. hibernate is not in you classpath), this module is not loaded,
14
# even if it is in this list and the enabled property is set to true. It's therefore not strictly necessary to disable
15
# any of these modules.
16
#DEFAULT: unitils.modules=database,dbunit,hibernate,mock,easymock,inject,spring,jpa
17
unitils.module.easymock.enabled=false
18
unitils.module.mock.enabled=false
19

    
20

    
21
### Database ###
22
#
23
# Name or path of the user specific properties file. This file should contain the necessary parameters to connect to the
24
# developer's own unit test schema. It is recommended to override the name of this file in the project specific properties
25
# file, to include the name of the project. The system will try to find this file in the classpath, the user home folder
26
# (recommended) or the local filesystem.
27
#
28
unitils.configuration.localFileName=unitils-cdmlib-local.properties
29
#
30
updateDataBaseSchema.enabled=true
31
#
32
dataSetStructureGenerator.xsd.dirName=src/test/resources/eu/etaxonomy/cdm/database/schema
33
#
34
# Fully qualified name of the implementation of org.unitils.dbmaintainer.maintainer.script.ScriptSource that is used.
35
# The default value is 'org.unitils.dbmaintainer.maintainer.script.FileScriptSource', which will retrieve the scripts
36
# from the local file system.
37
org.unitils.dbmaintainer.script.ScriptSource.implClassName=org.unitils.dbmaintainer.script.impl.ResourceScriptSource
38

    
39
dbMaintainer.script.locations=dbscripts
40
#dbMaintainer.script.locations=src/test/resources/dbscripts  - requires ScriptSource.implClassName=...DefaultScriptSource
41

    
42
dbMaintainer.dbVersionSource.autoCreateVersionTable=true
43

    
44
dbMaintainer.autoCreateExecutedScriptsTable=true
45

    
46
#
47
# default database configurations for HSQL, H2 and MYSQL:
48
#
49

    
50
# HSQL #
51
#
52
#   NOTE: hsqldb v. <1.9 has a bug (http://sourceforge.net/tracker/?func=detail&atid=378131&aid=1407528&group_id=23316)
53
#         due to which it is not possible to use batch updates, so we need to disable hibernate batching when using
54
#         hsqldb in the app context:
55
#
56
#database.driverClassName=org.hsqldb.jdbcDriver
57
#database.url=jdbc:hsqldb:mem:cdm
58
##database.url=jdbc:hsqldb:file:/home/andreas/.hsqldb/cdm;hsqldb.default_table_type=cached
59
#database.dialect=hsqldb
60
#dbMaintainer.script.fileExtensions=hsqldb.ddl
61
#database.userName=sa
62
#database.password=
63
#database.schemaNames=PUBLIC
64
#org.dbunit.dataset.datatype.IDataTypeFactory.implClassName.hsqldb=org.dbunit.ext.hsqldb.HsqldbDataTypeFactory
65

    
66
# H2 #
67
#
68
database.driverClassName=org.h2.Driver
69
database.url=jdbc:h2:mem:cdm
70
#database.url=jdbc:h2:file:~/.h2/cdm
71
database.dialect=h2
72
dbMaintainer.script.fileExtensions=h2.sql
73
database.userName=sa
74
database.password=
75
database.schemaNames=PUBLIC
76
org.dbunit.dataset.datatype.IDataTypeFactory.implClassName.h2=org.dbunit.ext.h2.H2DataTypeFactory
77
#org.dbunit.dataset.datatype.IDataTypeFactory.implClassName=org.dbunit.ext.h2.H2DataTypeFactory
78
#maybe we can replace this by org.unitils.core.dbsupport.H2DbSupport
79
org.unitils.core.dbsupport.DbSupport.implClassName.h2=eu.etaxonomy.cdm.database.H2DbSupport  
80
database.storedIndentifierCase.h2=auto
81
database.identifierQuoteString.h2=auto
82

    
83
#
84
# MySQL #
85
# cannot be used
86
# 1. you need another ddl or sql file to generate the schema
87
# 2. our DataSet xml files and the dataset.dtd contain upper-case table names like
88
#    'TERMVOCABULARY_REPRESENTATION_AUD'  but hibernate expects CamelCase with mysql !!!!
89
#    maybe we can workaround this by implementing a custom EJB3NamingStrategy like
90
#    UppercaseTableNamingStrategy it must be set in the persitence.xml which returns table names
91
#    always in uppercase, but this again causes problems with the @Tabel annotations which must
92
#    exactly match the table names in the database. This means in order to use mysql for tests we would
93
#    have to change the table names in all of our DataSet files.
94
#
95
#database.driverClassName=com.mysql.jdbc.Driver
96
#database.url=jdbc:mysql://127.0.0.1:3306/test
97
#database.userName=edit
98
#database.password=wp5
99
#database.dialect=mysql
100
#database.schemaNames=test
101
#dbMaintainer.script.fileExtensions=mysql.sql
102
#org.dbmaintain.dbsupport.DbSupport.implClassName.mysql=org.dbmaintain.dbsupport.impl.MySqlDbSupport
103
#org.dbunit.dataset.datatype.IDataTypeFactory.implClassName.mysqldb=org.dbunit.ext.mysql.MySqlDataTypeFactory
104

    
105

    
106
#### Transaction mode ###
107
#
108
# If set to commit or rollback, each test is run in a transaction,
109
# which is committed or rolled back after the test is finished.
110
# Since we have many tests with incomplete data these tests would be
111
# failing during commit so it is better use rollback as default
112
# and set commit for individual test where necessary
113
DatabaseModule.Transactional.value.default=rollback
114

    
115
# org.unitils.database.transaction.impl.DefaultUnitilsTransactionManager is used by default:
116
#
117
#   Implements transactions for unit tests, by delegating to a spring PlatformTransactionManager.
118
#   The concrete implementation of PlatformTransactionManager that is used depends on the test class.
119
#   If a custom PlatformTransactionManager was configured in a spring ApplicationContext, this one is used.
120
#   If not, a suitable subclass of PlatformTransactionManager is created, depending on the configuration
121
#   of a test. E.g. if some ORM persistence unit was configured on the test, a PlatformTransactionManager
122
#   that can offer transactional behavior for such a persistence unit is used.
123
#   If no such configuration is found, a DataSourceTransactionManager is used.
124
#
125
# org.unitils.database.transaction.UnitilsTransactionManager.implClassName=org.unitils.database.transaction.impl.SpringTransactionManager
126

    
127
### Hibernate ###
128
#
129
HibernateModule.configuration.implClassName=org.hibernate.cfg.Configuration
130

    
131
## Same as defined in hibernate.cfg.xml.
132
hibernate.connection.provider_class=org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl
133

    
134
#Created for hibernate 5 support, not yet available in standard unitils 
135
unitils.module.hibernate.className=org.unitils.orm.hibernate.Hibernate5Module
136

    
137
#Since Hibernate 5 (or earlier > 4.1.10) using the Proxy does not correctly release 
138
#the connections to the pool after transaction finishes.
139
dataSource.wrapInTransactionalProxy=false
(2-2/2)