plexus-python-common 1.0.47__tar.gz → 1.0.48__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/PKG-INFO +1 -1
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/ormutils.py +9 -9
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/s3utils.py +1 -1
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/PKG-INFO +1 -1
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/ormutils_test.py +83 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/.editorconfig +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/.github/workflows/pr.yml +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/.github/workflows/push.yml +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/.gitignore +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/MANIFEST.in +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/README.md +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/VERSION +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/pyproject.toml +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/jsonutils/dummy.0.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/jsonutils/dummy.1.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/jsonutils/dummy.2.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/0-dummy +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/1-dummy +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/2-dummy +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.0.0.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.0.0.vol-0.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.0.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.1.1.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.1.1.vol-1.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.1.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.2.2.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.2.2.vol-2.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.2.jsonl +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.csv.part0 +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.csv.part1 +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.csv.part2 +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.txt +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.baz/file.bar.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.baz/file.foo.bar +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.baz/file.foo.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/dir.foo.bar/dir.foo.bar.baz/file.foo.bar.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/dir.foo.bar/file.bar.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/dir.foo.bar/file.foo.bar +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/dir.foo.bar/file.foo.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/file.bar +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/file.baz +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils/dir.foo/file.foo +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils_archive/archive.compressed.zip +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/s3utils_archive/archive.uncompressed.zip +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/setup.cfg +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/setup.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMFile.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMNode.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMTags.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMWay.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/pose.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/proj.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/resources/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/resources/tags/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/resources/tags/universal.tagset.yaml +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/apiutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/bagutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/config.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/datautils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/dockerutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/jsonutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/pathutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/sqlutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/strutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/tagutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/testutils.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/SOURCES.txt +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/dependency_links.txt +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/not-zip-safe +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/requires.txt +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus_python_common.egg-info/top_level.txt +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/carto/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/carto/osm_file_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/carto/osm_tags_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/pose_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/proj_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/__init__.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/bagutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/datautils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/dockerutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/jsonutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/pathutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/s3utils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/strutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/tagutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/utils/testutils_test.py +0 -0
- {plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/testenv.py +0 -0
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/ormutils.py
RENAMED
|
@@ -1146,7 +1146,7 @@ def db_read_active_snapshot_model_of_record[SnapshotModelT: SnapshotModelMixin](
|
|
|
1146
1146
|
) -> SnapshotModelT:
|
|
1147
1147
|
db_instance = db.query(model).where(model.record_sqn == record_sqn, model.expired_at.is_(None)).one_or_none()
|
|
1148
1148
|
if db_instance is None:
|
|
1149
|
-
raise sa_exc.NoResultFound(f"
|
|
1149
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1150
1150
|
|
|
1151
1151
|
return db_instance
|
|
1152
1152
|
|
|
@@ -1218,7 +1218,7 @@ def db_update_snapshot_model[SnapshotModelT: SnapshotModelMixin](
|
|
|
1218
1218
|
) -> SnapshotModelT:
|
|
1219
1219
|
db_instance = db.query(model).where(model.record_sqn == record_sqn, model.expired_at.is_(None)).one_or_none()
|
|
1220
1220
|
if db_instance is None:
|
|
1221
|
-
raise sa_exc.NoResultFound(f"
|
|
1221
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1222
1222
|
|
|
1223
1223
|
db_instance.expired_at = updated_at
|
|
1224
1224
|
db_instance = clone_snapshot_model_instance(model, db_instance, clear_meta_fields=False, inplace=True)
|
|
@@ -1247,7 +1247,7 @@ def db_expire_snapshot_model[SnapshotModelT: SnapshotModelMixin](
|
|
|
1247
1247
|
.one_or_none()
|
|
1248
1248
|
)
|
|
1249
1249
|
if db_instance is None:
|
|
1250
|
-
raise sa_exc.NoResultFound(f"
|
|
1250
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1251
1251
|
|
|
1252
1252
|
db_instance.expired_at = updated_at
|
|
1253
1253
|
db_instance = clone_snapshot_model_instance(model, db_instance, clear_meta_fields=False, inplace=True)
|
|
@@ -1275,7 +1275,7 @@ def db_activate_snapshot_model[SnapshotModelT: SnapshotModelMixin](
|
|
|
1275
1275
|
.first()
|
|
1276
1276
|
)
|
|
1277
1277
|
if db_instance is None:
|
|
1278
|
-
raise sa_exc.NoResultFound(f"
|
|
1278
|
+
raise sa_exc.NoResultFound(f"expired '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1279
1279
|
|
|
1280
1280
|
db_new_instance = clone_snapshot_model_instance(model, db_instance)
|
|
1281
1281
|
db_new_instance.record_sqn = record_sqn
|
|
@@ -1371,7 +1371,7 @@ def db_read_active_revision_model_of_record[RevisionModelT: RevisionModelMixin](
|
|
|
1371
1371
|
) -> RevisionModelT:
|
|
1372
1372
|
db_instance = db.query(model).where(model.record_sqn == record_sqn, model.expired_at.is_(None)).one_or_none()
|
|
1373
1373
|
if db_instance is None:
|
|
1374
|
-
raise sa_exc.NoResultFound(f"
|
|
1374
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1375
1375
|
|
|
1376
1376
|
return db_instance
|
|
1377
1377
|
|
|
@@ -1443,7 +1443,7 @@ def db_update_revision_model[RevisionModelT: RevisionModelMixin](
|
|
|
1443
1443
|
) -> RevisionModelT:
|
|
1444
1444
|
db_instance = db.query(model).where(model.record_sqn == record_sqn, model.expired_at.is_(None)).one_or_none()
|
|
1445
1445
|
if db_instance is None:
|
|
1446
|
-
raise sa_exc.NoResultFound(f"
|
|
1446
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1447
1447
|
|
|
1448
1448
|
db_instance.expired_at = updated_at
|
|
1449
1449
|
db_instance = clone_revision_model_instance(model, db_instance, clear_meta_fields=False, inplace=True)
|
|
@@ -1474,7 +1474,7 @@ def db_expire_revision_model[RevisionModelT: RevisionModelMixin](
|
|
|
1474
1474
|
.one_or_none()
|
|
1475
1475
|
)
|
|
1476
1476
|
if db_instance is None:
|
|
1477
|
-
raise sa_exc.NoResultFound(f"
|
|
1477
|
+
raise sa_exc.NoResultFound(f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1478
1478
|
|
|
1479
1479
|
db_instance.expired_at = updated_at
|
|
1480
1480
|
db_instance = clone_revision_model_instance(model, db_instance, clear_meta_fields=False, inplace=True)
|
|
@@ -1492,7 +1492,7 @@ def db_activate_revision_model[RevisionModelT: RevisionModelMixin](
|
|
|
1492
1492
|
db_instance = db.query(model).where(model.record_sqn == record_sqn, model.expired_at.is_(None)).one_or_none()
|
|
1493
1493
|
if db_instance is not None:
|
|
1494
1494
|
raise sa_exc.MultipleResultsFound(
|
|
1495
|
-
f"
|
|
1495
|
+
f"active '{model_name_of(model)}' of specified record_sqn '{record_sqn}' already exists")
|
|
1496
1496
|
|
|
1497
1497
|
db_instance = (
|
|
1498
1498
|
db
|
|
@@ -1502,7 +1502,7 @@ def db_activate_revision_model[RevisionModelT: RevisionModelMixin](
|
|
|
1502
1502
|
.first()
|
|
1503
1503
|
)
|
|
1504
1504
|
if db_instance is None:
|
|
1505
|
-
raise sa_exc.NoResultFound(f"
|
|
1505
|
+
raise sa_exc.NoResultFound(f"expired '{model_name_of(model)}' of specified record_sqn '{record_sqn}' not found")
|
|
1506
1506
|
|
|
1507
1507
|
db_new_instance = clone_revision_model_instance(model, db_instance)
|
|
1508
1508
|
db_new_instance.record_sqn = record_sqn
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/s3utils.py
RENAMED
|
@@ -843,7 +843,7 @@ def s3_archive_open_members(
|
|
|
843
843
|
|
|
844
844
|
archive_size, member_zip_infos, missed_members = s3_archive_list_files(client, bucket, key, members)
|
|
845
845
|
if missed_members:
|
|
846
|
-
raise FileNotFoundError(f"
|
|
846
|
+
raise FileNotFoundError(f"archive members not found: {', '.join(missed_members)}")
|
|
847
847
|
|
|
848
848
|
if callable(use_ranged_requests):
|
|
849
849
|
use_ranged_requests = use_ranged_requests(archive_size, member_zip_infos)
|
|
@@ -30,9 +30,13 @@ from plexus.common.utils.ormutils import (
|
|
|
30
30
|
db_activate_revision_model,
|
|
31
31
|
db_activate_snapshot_model,
|
|
32
32
|
db_create_changing_model,
|
|
33
|
+
db_create_changing_models,
|
|
33
34
|
db_create_revision_model,
|
|
35
|
+
db_create_revision_models,
|
|
34
36
|
db_create_sequence_model,
|
|
37
|
+
db_create_sequence_models,
|
|
35
38
|
db_create_snapshot_model,
|
|
39
|
+
db_create_snapshot_models,
|
|
36
40
|
db_delete_sequence_model,
|
|
37
41
|
db_expire_revision_model,
|
|
38
42
|
db_expire_snapshot_model,
|
|
@@ -223,6 +227,21 @@ def test_db_sequence_model_crud(fixture_postgresql_test_proc, fixture_postgresql
|
|
|
223
227
|
results = db_read_sequence_models(session, DummySequenceModel, 0, 200)
|
|
224
228
|
assert len(results) == 0
|
|
225
229
|
|
|
230
|
+
create_records = [random_record() for _ in range(0, 100)]
|
|
231
|
+
|
|
232
|
+
results = db_create_sequence_models(session, DummySequenceModel, create_records)
|
|
233
|
+
assert len(results) == len(create_records)
|
|
234
|
+
|
|
235
|
+
for i, result in zip(range(0, 100), results):
|
|
236
|
+
assert result.sqn == i + 101
|
|
237
|
+
assert result.dummy_uuid == create_records[i].dummy_uuid
|
|
238
|
+
assert result.dummy_int == create_records[i].dummy_int
|
|
239
|
+
assert result.dummy_str == create_records[i].dummy_str
|
|
240
|
+
assert result.dummy_float == create_records[i].dummy_float
|
|
241
|
+
assert result.dummy_bool == create_records[i].dummy_bool
|
|
242
|
+
assert result.dummy_array == create_records[i].dummy_array
|
|
243
|
+
assert result.dummy_json == create_records[i].dummy_json
|
|
244
|
+
|
|
226
245
|
|
|
227
246
|
def test_db_changing_model_crud(fixture_postgresql_test_proc, fixture_postgresql_test):
|
|
228
247
|
scheme = make_scheme(Dialects.postgresql, Drivers.psycopg)
|
|
@@ -359,6 +378,26 @@ def test_db_changing_model_crud(fixture_postgresql_test_proc, fixture_postgresql
|
|
|
359
378
|
results = db_read_sequence_models(session, DummyChangingModel, 0, 200)
|
|
360
379
|
assert len(results) == 0
|
|
361
380
|
|
|
381
|
+
create_records = [random_record() for _ in range(0, 100)]
|
|
382
|
+
|
|
383
|
+
results = db_create_changing_models(session,
|
|
384
|
+
DummyChangingModel,
|
|
385
|
+
create_records,
|
|
386
|
+
dt_parse_iso("2024-01-01T00:00:00+00:00"))
|
|
387
|
+
assert len(results) == len(create_records)
|
|
388
|
+
|
|
389
|
+
for i, result in zip(range(0, 100), results):
|
|
390
|
+
assert result.sqn == i + 101
|
|
391
|
+
assert result.created_at == dt_parse_iso("2024-01-01T00:00:00+00:00")
|
|
392
|
+
assert result.updated_at == dt_parse_iso("2024-01-01T00:00:00+00:00")
|
|
393
|
+
assert result.dummy_uuid == create_records[i].dummy_uuid
|
|
394
|
+
assert result.dummy_int == create_records[i].dummy_int
|
|
395
|
+
assert result.dummy_str == create_records[i].dummy_str
|
|
396
|
+
assert result.dummy_float == create_records[i].dummy_float
|
|
397
|
+
assert result.dummy_bool == create_records[i].dummy_bool
|
|
398
|
+
assert result.dummy_array == create_records[i].dummy_array
|
|
399
|
+
assert result.dummy_json == create_records[i].dummy_json
|
|
400
|
+
|
|
362
401
|
|
|
363
402
|
def test_db_snapshot_model_crud(fixture_postgresql_test_proc, fixture_postgresql_test):
|
|
364
403
|
scheme = make_scheme(Dialects.postgresql, Drivers.psycopg)
|
|
@@ -644,6 +683,27 @@ def test_db_snapshot_model_crud(fixture_postgresql_test_proc, fixture_postgresql
|
|
|
644
683
|
assert result.dummy_array == update_records[i].dummy_array
|
|
645
684
|
assert result.dummy_json == update_records[i].dummy_json
|
|
646
685
|
|
|
686
|
+
create_records = [random_record() for _ in range(0, 100)]
|
|
687
|
+
|
|
688
|
+
results = db_create_snapshot_models(session,
|
|
689
|
+
DummySnapshotModel,
|
|
690
|
+
create_records,
|
|
691
|
+
dt_parse_iso("2024-01-01T00:00:00+00:00"))
|
|
692
|
+
assert len(results) == len(create_records)
|
|
693
|
+
|
|
694
|
+
for i, result in zip(range(0, 100), results):
|
|
695
|
+
assert result.sqn == i + 301
|
|
696
|
+
assert result.record_sqn == i + 301
|
|
697
|
+
assert result.created_at == dt_parse_iso("2024-01-01T00:00:00+00:00")
|
|
698
|
+
assert result.expired_at is None
|
|
699
|
+
assert result.dummy_uuid == create_records[i].dummy_uuid
|
|
700
|
+
assert result.dummy_int == create_records[i].dummy_int
|
|
701
|
+
assert result.dummy_str == create_records[i].dummy_str
|
|
702
|
+
assert result.dummy_float == create_records[i].dummy_float
|
|
703
|
+
assert result.dummy_bool == create_records[i].dummy_bool
|
|
704
|
+
assert result.dummy_array == create_records[i].dummy_array
|
|
705
|
+
assert result.dummy_json == create_records[i].dummy_json
|
|
706
|
+
|
|
647
707
|
|
|
648
708
|
def test_db_revision_model_crud(fixture_postgresql_test_proc, fixture_postgresql_test):
|
|
649
709
|
scheme = make_scheme(Dialects.postgresql, Drivers.psycopg)
|
|
@@ -957,6 +1017,29 @@ def test_db_revision_model_crud(fixture_postgresql_test_proc, fixture_postgresql
|
|
|
957
1017
|
assert result.dummy_array == update_records[i].dummy_array
|
|
958
1018
|
assert result.dummy_json == update_records[i].dummy_json
|
|
959
1019
|
|
|
1020
|
+
create_records = [random_record() for _ in range(0, 100)]
|
|
1021
|
+
|
|
1022
|
+
results = db_create_revision_models(session,
|
|
1023
|
+
DummyRevisionModel,
|
|
1024
|
+
create_records,
|
|
1025
|
+
dt_parse_iso("2024-01-01T00:00:00+00:00"))
|
|
1026
|
+
assert len(results) == len(create_records)
|
|
1027
|
+
|
|
1028
|
+
for i, result in zip(range(0, 100), results):
|
|
1029
|
+
assert result.sqn == i + 301
|
|
1030
|
+
assert result.record_sqn == i + 301
|
|
1031
|
+
assert result.revision == 1
|
|
1032
|
+
assert result.created_at == dt_parse_iso("2024-01-01T00:00:00+00:00")
|
|
1033
|
+
assert result.updated_at == dt_parse_iso("2024-01-01T00:00:00+00:00")
|
|
1034
|
+
assert result.expired_at is None
|
|
1035
|
+
assert result.dummy_uuid == create_records[i].dummy_uuid
|
|
1036
|
+
assert result.dummy_int == create_records[i].dummy_int
|
|
1037
|
+
assert result.dummy_str == create_records[i].dummy_str
|
|
1038
|
+
assert result.dummy_float == create_records[i].dummy_float
|
|
1039
|
+
assert result.dummy_bool == create_records[i].dummy_bool
|
|
1040
|
+
assert result.dummy_array == create_records[i].dummy_array
|
|
1041
|
+
assert result.dummy_json == create_records[i].dummy_json
|
|
1042
|
+
|
|
960
1043
|
|
|
961
1044
|
def test_make_snapshot_model_trigger(fixture_postgresql_test_proc, fixture_postgresql_test):
|
|
962
1045
|
scheme = make_scheme(Dialects.postgresql, Drivers.psycopg)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/0-dummy
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/1-dummy
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/2-dummy
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/resources/unittest/pathutils/dummy.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMFile.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMNode.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMTags.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/OSMWay.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/carto/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/resources/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/__init__.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/apiutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/bagutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/config.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/datautils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/dockerutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/jsonutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/pathutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/sqlutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/strutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/tagutils.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/src/plexus/common/utils/testutils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/pose_test.py
RENAMED
|
File without changes
|
{plexus_python_common-1.0.47 → plexus_python_common-1.0.48}/test/plexus_tests/common/proj_test.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|