@@ -124,10 +124,27 @@ install-py: uninstall-py clean-py wasm
124124 echo " $( BOLD) 📦 Phase 3: Installing $$ WHEEL_PATH...$( RESET) " ; \
125125 if [ -n " $( UV) " ]; then $( UV) pip install $$ WHEEL_PATH; \
126126 else $(PYTHON ) -m pip install $$ WHEEL_PATH; fi
127- @echo " $( BOLD) 🧪 Phase 4: Integration Test (Isolated from Source)...$( RESET) "
128- @cd $(BINDING_PY ) /tests && (if [ -n " $( UV) " ]; then $( UV) run python -m pytest . -s; \
129- else $(PYTHON ) -m pytest . -s; fi)
130- @echo " $( GREEN) $( BOLD) ✅ Success: Python Wheel verified.$( RESET) "
127+ @echo " $( BOLD) 🧪 Phase 4: Integration Test (Clean-Room)...$( RESET) "
128+ @TEMP_DIR=$$(mktemp -d ) ; \
129+ echo " Temp Test Directory: $$ TEMP_DIR" ; \
130+ cp -r $(BINDING_PY ) /tests $$ TEMP_DIR/tests; \
131+ mkdir -p $$ TEMP_DIR/tests/samples; \
132+ cp -r $(PROJECT_ROOT ) /j2735codec/core/$(J2735_REV ) /samples/jer/* $$ TEMP_DIR/tests/samples/; \
133+ cd $$ TEMP_DIR; \
134+ echo " Contents of temp directory:" ; \
135+ ls -R; \
136+ if [ -n " $( UV) " ]; then \
137+ $(UV ) init; \
138+ $(UV ) venv; \
139+ WHEEL_PATH=$$(realpath $(PROJECT_ROOT ) /$(BINDING_PY ) /dist/* .whl | head -n1) ; \
140+ $(UV ) pip install --upgrade pip pytest psutil $$ WHEEL_PATH; \
141+ $(UV ) run python -m pytest tests -s; \
142+ else \
143+ $(PYTHON ) -m pip install --upgrade pip pytest; \
144+ $(PYTHON ) -m pytest tests -s; \
145+ fi ; \
146+ rm -rf $$ TEMP_DIR; \
147+ echo " $( GREEN) $( BOLD) ✅ Success: Python Wheel verified in isolation.$( RESET) "
131148
132149clean-py :
133150 rm -rf $(PY_DIST_DIR ) $(BINDING_PY ) /* .egg-info
@@ -151,6 +168,7 @@ clean-js:
151168 @echo " 🧹 Cleaning Node artifacts..."
152169 @rm -rf $(JS_DIST_DIR )
153170 @find $(BINDING_JS ) -name " *.tgz" -delete
171+ @find . -type d -name " node_modules" -exec rm -rf {} +
154172
155173install-js : clean-js build-js
156174 @echo " $( BOLD) 🧪 Phase 1: Local Source Test...$( RESET) "
@@ -167,6 +185,7 @@ install-js: clean-js build-js
167185 $(NPM ) init -y > /dev/null && \
168186 echo " 📦 Installing tarball..." && \
169187 $(NPM ) install $$ FULL_TARBALL_PATH > /dev/null && \
188+ $(NPM ) install vitest --no-save > /dev/null && \
170189 cp -r $(PROJECT_ROOT ) /$(BINDING_JS ) /tests ./tests && \
171190 mkdir -p samples && \
172191 cp -r $(PROJECT_ROOT ) /j2735codec/core/$(J2735_REV ) /samples/jer/* ./samples/ && \
0 commit comments