Phase 1: s-expression core library + test infrastructure
S-expression parser, evaluator, and primitive registry in shared/sexp/. 109 unit tests covering parsing, evaluation, special forms, lambdas, closures, components (defcomp), and 60+ pure builtins. Test infrastructure: Dockerfile.unit (tier 1, fast) and Dockerfile.integration (tier 2, ffmpeg). Dev watch mode auto-reruns on file changes. Deploy gate blocks push on test failure. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -335,6 +335,41 @@ services:
|
||||
- ./account/__init__.py:/app/account/__init__.py:ro
|
||||
- ./account/models:/app/account/models:ro
|
||||
|
||||
test-unit:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: test/Dockerfile.unit
|
||||
volumes:
|
||||
- ./shared:/app/shared
|
||||
- ./artdag/core:/app/artdag/core
|
||||
- ./artdag/l1/tests:/app/artdag/l1/tests
|
||||
- ./artdag/l1/sexp_effects:/app/artdag/l1/sexp_effects
|
||||
- ./artdag/l1/app:/app/artdag/l1/app
|
||||
entrypoint: >
|
||||
python -m pytest_watch
|
||||
--runner "python -m pytest -v --tb=short"
|
||||
--
|
||||
shared/
|
||||
artdag/core/tests/
|
||||
artdag/core/artdag/sexp/
|
||||
artdag/l1/tests/
|
||||
artdag/l1/sexp_effects/
|
||||
--ignore=artdag/l1/tests/test_jax_primitives.py
|
||||
--ignore=artdag/l1/tests/test_jax_pipeline_integration.py
|
||||
-k "not gpu and not cuda"
|
||||
profiles:
|
||||
- test
|
||||
|
||||
test-integration:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: test/Dockerfile.integration
|
||||
volumes:
|
||||
- ./shared:/app/shared
|
||||
- ./artdag:/app/artdag
|
||||
profiles:
|
||||
- test
|
||||
|
||||
networks:
|
||||
appnet:
|
||||
driver: bridge
|
||||
|
||||
Reference in New Issue
Block a user