fixtureqa 0.4.12__tar.gz → 0.4.14__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.
- {fixtureqa-0.4.12/fixtureqa.egg-info → fixtureqa-0.4.14}/PKG-INFO +2 -2
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_payload.py +4 -4
- {fixtureqa-0.4.12 → fixtureqa-0.4.14/fixtureqa.egg-info}/PKG-INFO +2 -2
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixtureqa.egg-info/requires.txt +1 -1
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/pyproject.toml +2 -2
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_perf_payload.py +3 -3
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/LICENSE +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/README.md +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/__main__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/app.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/connection_manager.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/deps.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/admin.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/auth.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/branding.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/custom_tags.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/fix_spec.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/messages.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/perf.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/scenarios.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/sessions.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/setup.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/spec_overlay.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/templates.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/routers/ws.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/api/schemas.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/config/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/atomic_io.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/auth.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/config_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/custom_tag_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/db_migrations.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/events.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/exec_csv_writer.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_application.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_builder.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_parser.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_spec_parser.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_tags.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/fix_time.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/housekeeping.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/inbound.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/json_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/message_log.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/message_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/models.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_engine.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_models.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_stats.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/perf_writer.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/scenario_runner.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/scenario_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/session.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/session_manager.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/spec_overlay_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/template_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/user_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/core/venue_responses.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/fix_specs/FIX42.xml +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/fix_specs/FIX44.xml +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/server.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/assets/ag-grid-_QKprVdm.js +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/assets/index-BwQf-cei.css +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/assets/index-CyNOPa0n.js +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/assets/index-DHd_iEnT.js +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/assets/react-vendor-2eF0YfZT.js +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/favicon.svg +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/static/index.html +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixture/ui/__init__.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixtureqa.egg-info/SOURCES.txt +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixtureqa.egg-info/dependency_links.txt +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixtureqa.egg-info/entry_points.txt +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/fixtureqa.egg-info/top_level.txt +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/setup.cfg +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_atomic_io.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_auth.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_config_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_connection_manager.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_db_migrations.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_fix_builder.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_health.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_inbound.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_inbound_validation.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_message_store.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_perf_api.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_perf_engine.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_perf_models.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_perf_rehydrate.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_scenarios.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_session_lifecycle.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_session_manager_concurrency.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_sessions.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_templates.py +0 -0
- {fixtureqa-0.4.12 → fixtureqa-0.4.14}/tests/test_ws.py +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fixtureqa
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.14
|
|
4
4
|
Summary: FIXture — FIX Protocol Testing Tool
|
|
5
5
|
Requires-Python: >=3.10
|
|
6
6
|
License-File: LICENSE
|
|
7
|
-
Requires-Dist: fixcore-engine==0.6.
|
|
7
|
+
Requires-Dist: fixcore-engine==0.6.1
|
|
8
8
|
Requires-Dist: fastapi>=0.111.0
|
|
9
9
|
Requires-Dist: uvicorn[standard]>=0.29.0
|
|
10
10
|
Requires-Dist: websockets>=12.0
|
|
@@ -61,10 +61,10 @@ _SIDE_BUY, _SIDE_SELL = "1", "2"
|
|
|
61
61
|
|
|
62
62
|
# Routing/identity tags mirrored from an order onto every 35=G in its chain —
|
|
63
63
|
# endpoints commonly require these to match the original order. Header tags
|
|
64
|
-
# 50/57/115/116/128/129/142/143/144/145 plus
|
|
65
|
-
#
|
|
66
|
-
# (the session stamps them).
|
|
67
|
-
AMEND_MIRROR_TAGS = (50, 57, 109, 115, 116, 128, 129, 142, 143, 144, 145)
|
|
64
|
+
# 50/57/115/116/128/129/142/143/144/145 plus the body tags Account(1) and
|
|
65
|
+
# ClientID(109, FIX 4.2) used for the same purpose. CompIDs (49/56) are
|
|
66
|
+
# transport-owned and excluded (the session stamps them).
|
|
67
|
+
AMEND_MIRROR_TAGS = (1, 50, 57, 109, 115, 116, 128, 129, 142, 143, 144, 145)
|
|
68
68
|
|
|
69
69
|
|
|
70
70
|
class PerfConfigError(Exception):
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: fixtureqa
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.14
|
|
4
4
|
Summary: FIXture — FIX Protocol Testing Tool
|
|
5
5
|
Requires-Python: >=3.10
|
|
6
6
|
License-File: LICENSE
|
|
7
|
-
Requires-Dist: fixcore-engine==0.6.
|
|
7
|
+
Requires-Dist: fixcore-engine==0.6.1
|
|
8
8
|
Requires-Dist: fastapi>=0.111.0
|
|
9
9
|
Requires-Dist: uvicorn[standard]>=0.29.0
|
|
10
10
|
Requires-Dist: websockets>=12.0
|
|
@@ -4,11 +4,11 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "fixtureqa"
|
|
7
|
-
version = "0.4.
|
|
7
|
+
version = "0.4.14"
|
|
8
8
|
description = "FIXture — FIX Protocol Testing Tool"
|
|
9
9
|
requires-python = ">=3.10"
|
|
10
10
|
dependencies = [
|
|
11
|
-
"fixcore-engine==0.6.
|
|
11
|
+
"fixcore-engine==0.6.1",
|
|
12
12
|
"fastapi>=0.111.0",
|
|
13
13
|
"uvicorn[standard]>=0.29.0",
|
|
14
14
|
"websockets>=12.0",
|
|
@@ -442,11 +442,11 @@ def test_exec_id_is_dashed_uuid():
|
|
|
442
442
|
|
|
443
443
|
def test_amend_mirrors_routing_headers_from_gen_rules():
|
|
444
444
|
rules = {"142": "DUB", "50": "TRADER1", "115": "CLIENTCO", "129": "DESK9",
|
|
445
|
-
"109": "CLIENT42"}
|
|
445
|
+
"109": "CLIENT42", "1": "ACC-7"}
|
|
446
446
|
f = PayloadFactory(_config([], gen_rules=rules), FakeTemplateStore({}), "u")
|
|
447
447
|
order, meta = f.build_single_order()
|
|
448
448
|
assert meta["mirror_tags"] == {142: "DUB", 50: "TRADER1", 115: "CLIENTCO",
|
|
449
|
-
129: "DESK9", 109: "CLIENT42"}
|
|
449
|
+
129: "DESK9", 109: "CLIENT42", 1: "ACC-7"}
|
|
450
450
|
amend, _ = f.build_amend(meta, 10.05)
|
|
451
451
|
for tag, val in meta["mirror_tags"].items():
|
|
452
452
|
assert order.get_field_or(tag, "") == val
|
|
@@ -484,5 +484,5 @@ def test_amend_omits_routing_headers_when_order_has_none():
|
|
|
484
484
|
_, meta = f.build_single_order()
|
|
485
485
|
assert meta["mirror_tags"] == {}
|
|
486
486
|
amend, _ = f.build_amend(meta, 10.05)
|
|
487
|
-
for tag in (50, 57, 109, 115, 116, 128, 129, 142, 143, 144, 145):
|
|
487
|
+
for tag in (1, 50, 57, 109, 115, 116, 128, 129, 142, 143, 144, 145):
|
|
488
488
|
assert amend.get_field_or(tag, "") == ""
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|