forked from ledgersmb/LedgerSMB
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.tests
79 lines (61 loc) · 3.18 KB
/
README.tests
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
Test file number allocation:
00 - 09: General base checks
10 - 39: Module checks, no LSMB database required
40: Set up test LSMB database
41: Addons setup. Addons should use 41.x notation where x is the run
needed to properly install.
42 - 59: Operational checks, LSMB database required
60 - 88: Interface checks
89: Clean up test LSMB database
90 - 99: Packaging checks
Environment variables can be used as flags to disable/enable tests >= 40
LSMB_TEST_DB must be set to a defined value if databases are going to be tested.
if LSMB_NEW_DB is set, test 40 will create a database with the name from this
environment variable, and subsequent database tests will run against that
database. If this is not set, and PGDATABASE is set, tests will run on that
database. If neither are set, the tests will bail out.
Special notes on specific test cases:
42-dbobject.t: Some tests will run even if LSMB_TEST_DB is not enabled. These
tests do not require a database connection.
43-dbtest.t: This runs defined test cases from sql/modules/test/. If new
scripts are added, they must be listed in this script as well.
62-api.t uses request hashes defined in t/data/62-request-data. This
script employs a database commit filter to prevent commits to the db. It is
safe to run on existing databases.
63-lwp.t will re-use the request hashes defined in test/data/62-request-data.
It does NOT employ a commit filter, so is NOT safe to run against production
data. It will only run if the environment variable LSMB_TEST_LWN is set to true.
ENVIRONMENT VARIABLES USED:
Environment Variables which control which tests are run (set to true to enable):
LSMB_TEST_DB runs database tests
LSMB_TEST_LWP runs LWP tests
Variables to set credentials:
PGUSER and PGPASSWORD for db tests
LSMB_USER and LSMB_PASS for LWP tests
Variables to configure test suites:
PGDATABASE directs to the database (or company element in LWP tests)
LSMB_BASE_URL directs LWP tests to the main LSMB instance being tested.
If you wish to make a new db for tests, you must set the following environment
variable:
LSMB_NEW_DB is the name of the new db. If this database cannot be created,
the tests will bail out.
Additionally, if LSMB_INSTALL_DB is set, the database will NOT be removed after
test cases are run. This can be a useful way of installing the for production
use, though currently an admin user is not created in this process and would
need to be created manually.
When a database is created, these environment variables are used to control
flow. If these are not set, relevant portions are skipped.
Admin user creation:
----------------------
LSMB_ADMIN_USERNAME username for admin user
LSMB_ADMIN_PASSWORD password for admin user
LSMB_ADMIN_FNAME Admin's first name
LSMB_ADMIN_LNAME Admin's last name
LSMB_COUNTRY_CODE Country code for administrator and for loading chart of
accounts
Chart of accounts loading
-------------------------
LSMB_LOAD_COA name of the Chart of Accounts file, not including extension
LSMB_LOAD_GIFI name of the GIFI file, not including extension
LSMB_COUNTRY_CODE Country code for administrator and for loading chart of
accounts