Skip to content

Commit 70ec860

Browse files
committed
add test/integration/Project.toml
which includes the DashBase "weakdeps" so that we can test plotly graph rendering via the `DashBase` extensions. since the dash test driver uses `julia --project` as base command, we must `cd` into `test/integration` and setup `Dash` as a dev package manually. Update the dev docs accordingly!
1 parent 54dd034 commit 70ec860

File tree

4 files changed

+18
-8
lines changed

4 files changed

+18
-8
lines changed

.circleci/config.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,14 @@ jobs:
3636
- run:
3737
name: ⚙️ Integration tests
3838
command: |
39-
julia --project -e 'import Pkg; Pkg.instantiate(); Pkg.update();'
4039
python -m venv venv
4140
. venv/bin/activate
4241
pip install --upgrade pip wheel
4342
git clone --depth 1 https://github.com/plotly/dash.git -b dev dash-main
4443
cd dash-main && pip install -e .[ci,dev,testing] --progress-bar off && cd ..
45-
pytest --headless --nopercyfinalize --junitxml=test-reports/dashjl.xml --percy-assets=test/assets/ test/integration/
44+
cd test/integration
45+
julia --project -e 'import Pkg; Pkg.develop(path="../../"); Pkg.instantiate(); Pkg.update();'
46+
pytest --headless --nopercyfinalize --junitxml=../../test-reports/dashjl.xml --percy-assets=../assets/ .
4647
- store_artifacts:
4748
path: test-reports
4849
- store_test_results:

CONTRIBUTING.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,10 @@ cd Dash.jl
4141
git clone --depth 1 https://github.com/plotly/dash.git -b dev dash-main
4242
python3 -m venv venv
4343
pip install --upgrade pip wheel
44-
cd dash-main && pip install -e .[ci,dev,testing] && cd ..dash
45-
pytest --headless --nopercyfinalize --percy-assets=test/assets/ test/integration/
44+
cd dash-main && pip install -e .[ci,dev,testing] && cd ..
45+
cd test/integration
46+
julia --project -e 'import Pkg; Pkg.develop(path="../../"); Pkg.instantiate(); Pkg.update();'
47+
pytest --headless --nopercyfinalize --percy-assets=../assets/ .
4648
```
4749

4850
Alternatively, one can run the integration tests using the same Docker

build/README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,11 +77,11 @@ chmod +x ./install-chromedriver.sh
7777
ORB_PARAM_DRIVER_INSTALL_DIR=/usr/local/bin/ ./install-chromedriver.sh
7878

7979
# [on 1st session] instantiate julia deps
80-
cd /home/circleci/project/
81-
julia --project -e 'import Pkg; Pkg.instantiate()'
80+
cd /home/circleci/project/test/integration
81+
julia --project -e 'import Pkg; Pkg.develop(path="../../"); Pkg.instantiate()'
8282

8383
# update julia deps then run integration tests
84-
cd /home/circleci/project/
84+
cd /home/circleci/project/test/integration
8585
julia --project -e 'import Pkg; Pkg.update()'
86-
pytest --headless --nopercyfinalize --percy-assets=test/assets/ test/integration/
86+
pytest --headless --nopercyfinalize --percy-assets=../assets/ .
8787
```

test/integration/Project.toml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[deps]
2+
Dash = "1b08a953-4be3-4667-9a23-3db579824955"
3+
DashBase = "03207cf0-e2b3-4b91-9ca8-690cf0fb507e"
4+
HTTP = "cd3eb016-35fb-5094-929b-558a96fad6f3"
5+
PlotlyBase = "a03496cd-edff-5a9b-9e67-9cda94a718b5"
6+
PlotlyJS = "f0f68f2c-4968-5e81-91da-67840de0976a"
7+
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"

0 commit comments

Comments
 (0)