-
Notifications
You must be signed in to change notification settings - Fork 19
Expand file tree
/
Copy pathMakefile
More file actions
52 lines (39 loc) · 1.48 KB
/
Copy pathMakefile
File metadata and controls
52 lines (39 loc) · 1.48 KB
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
.PHONY: test test-cover lint ci test-python test-typescript lint-python lint-typescript test-equiv docs-python
# Unified monorepo: Python + TypeScript in one project.
# Test equivalence: both suites must pass; same scenarios covered on both sides.
# Run all tests (Python + TypeScript) — both must pass
test: test-python test-typescript
@echo "---"
@echo "All tests passed (Python + TypeScript)"
# Run Python unit tests (packages/python)
test-python:
$(MAKE) -C packages/python test
# Run TypeScript unit tests (packages/typescript)
test-typescript:
$(MAKE) -C packages/typescript test
# Coverage (both) — output to packages/*/test-result/
test-cover: test-cover-python test-cover-typescript
@echo "---"
@echo "Coverage complete: packages/python/test-result/ packages/typescript/test-result/"
test-cover-python:
$(MAKE) -C packages/python test-cover
test-cover-typescript:
$(MAKE) -C packages/typescript test-cover
# Lint (both)
lint: lint-python lint-typescript
@echo "---"
@echo "Lint passed (Python + TypeScript)"
lint-python:
$(MAKE) -C packages/python lint
lint-typescript:
$(MAKE) -C packages/typescript lint
# Generate Python SDK API HTML (pdoc; requires docs extra in packages/python)
docs-python:
$(MAKE) -C packages/python docs-python
# CI: lint + test-cover (both packages)
ci: lint test-cover
@echo "---"
@echo "CI passed"
# Test equivalence check: run both suites, fail if either fails
test-equiv: test
@echo "Test equivalence: Python and TypeScript suites both passed"