Mercurial > p > roundup > code
annotate test/test_anypy.py @ 7723:8147f6deac9f
fix(db): Make using pg_service work again.
When I did the merge of schema support I broke pg_service.conf support
by replacing get_database_name with db_schema_split. This commit
fixes it.
Also this commit returns the schema if one is specified in
pg_service.conf.
back_postgresql.py:
Replace calls to db_schema_split() with get_database_schema_names()
(new name for get_database_name()). Rename db_schema_split to
_db_schema_split. It now returns a tuple (dbname, schema) rather
than a list. It is used only by get_database_schema_names() which
also returns tuples.
get_database_schema_names() can also get schema info for the service
(if present) as specified by pg_service.conf.
Add get_database_user() to get the user from either RDBMS_USER or
pg_service.conf. (User needed for creating schema, so not needed
before schema patch.
import re at the top of file and remove lower import.
Remove some schema code from db_command as it's not needed. The
database conection is done to either postgresql or template1
existing databases. This command never connects to the roundp
specified db.
test/test_postgresql.py:
Reorganize top level imports, add import os. Replace import of
db_schema_split with get_database_schema_names. Also replace calls
to db_schema_split.
Create new Opener for the service file. Set PGSERVICEFILE to point
to test/pg_service.conf.
Add three new classes to test Service:
1) using regular db
2) using schema within db
3) Unable to parse schema name from pg_service.conf.
The last doesn't need a db. Number 1 and 2 reuse the tests in ROTest
to verify db connectivity.
test/pg_service.conf:
three service connections for: db only, db and schema, and incorrectly
specified schema test cases.
doc/upgrading.txt:
updated to current status. Included example schema definition in
service file.
| author | John Rouillard <rouilj@ieee.org> |
|---|---|
| date | Thu, 28 Dec 2023 15:13:42 -0500 |
| parents | e4db9d0b85c7 |
| children | c65e0a725c88 |
| rev | line source |
|---|---|
|
6532
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
1 """Random tests for anypy modules""" |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
2 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
3 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
4 import unittest |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
5 from roundup.anypy.strings import repr_export, eval_import |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
6 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
7 import sys |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
8 _py3 = sys.version_info[0] > 2 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
9 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
10 class StringsTest(unittest.TestCase): |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
11 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
12 def test_import_params(self): |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
13 """ issue2551170 - handle long int in history/journal |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
14 params tuple |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
15 """ |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
16 # python2 export with id as number |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
17 val = eval_import("('issue', 2345L, 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
18 self.assertSequenceEqual(val, ('issue', 2345, 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
19 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
20 # python3 export with id as number |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
21 val = eval_import("('issue', 2345, 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
22 self.assertSequenceEqual(val, ('issue', 2345, 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
23 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
24 # python2 or python3 export with id as string |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
25 val = eval_import("('issue', '2345', 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
26 self.assertSequenceEqual(val, ('issue', '2345', 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
27 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
28 def test_export_params(self): |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
29 """ issue2551170 - handle long int in history/journal |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
30 params tuple |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
31 """ |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
32 # python2 export with id as number |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
33 if _py3: |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
34 val = repr_export(('issue', 2345, 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
35 self.assertEqual(val, "('issue', 2345, 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
36 else: |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
37 val = repr_export(('issue', long(2345), 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
38 self.assertEqual(val, "('issue', 2345L, 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
39 |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
40 # python2 or python3 export with id as string |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
41 val = repr_export(('issue', '2345', 'status')) |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
42 self.assertEqual(val, "('issue', '2345', 'status')") |
|
e4db9d0b85c7
test for issue2551170 process python 2 long under python3
John Rouillard <rouilj@ieee.org>
parents:
diff
changeset
|
43 |
