Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
163 commits
Select commit Hold shift + click to select a range
040c41d
update existing tests to pass
Kcheung42 Oct 21, 2025
ef866c4
update for headless mode
Kcheung42 Oct 22, 2025
e06b1e3
optimize tests
Kcheung42 Oct 22, 2025
a37d973
update feature name
Kcheung42 Oct 22, 2025
afa0b6d
add comments back in
Kcheung42 Oct 22, 2025
df56d37
rename scenarios
Kcheung42 Oct 23, 2025
c4e8aa0
fix format
Kcheung42 Oct 23, 2025
4c0c0aa
refactor
Kcheung42 Oct 23, 2025
d226738
fix format
Kcheung42 Oct 23, 2025
0fd7265
add step functions for ensuring outputs are NOT selected and inputs a…
Kcheung42 Oct 24, 2025
ca32c2e
simplify tests to core set of scenarios for conditionals
Kcheung42 Oct 28, 2025
131411c
add headless mode and query tag param
Kcheung42 Nov 18, 2025
a5c5295
refactor test matrix data to a map
Kcheung42 Nov 18, 2025
8f7f467
refactor to use keywords for module-combo
Kcheung42 Nov 19, 2025
f023907
update test data edn
Kcheung42 Nov 19, 2025
ecc45ba
add recursive search to all conditionals in ancestors
Kcheung42 Nov 19, 2025
a6a3787
fix scenario gen
Kcheung42 Nov 20, 2025
05434ff
update step files
Kcheung42 Nov 20, 2025
3739ad8
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Nov 20, 2025
7a7ebf1
remove prn statement
Kcheung42 Nov 20, 2025
f2358b3
move step files
Kcheung42 Nov 20, 2025
98f05e4
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Nov 20, 2025
efabf0f
include entity's own conditionals for recursive expansion
Kcheung42 Nov 20, 2025
16bfa9d
fix merge conflict
Kcheung42 Dec 1, 2025
4bed917
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Dec 1, 2025
4caf659
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 1, 2025
7c92524
fix helper step files and feature files
Kcheung42 Dec 1, 2025
e97caf3
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 1, 2025
cc0ae6e
shorten wait time
Kcheung42 Dec 1, 2025
40ae519
add steps to deps.edn
Kcheung42 Dec 2, 2025
4f919bb
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 2, 2025
9333cd6
update step functions
Kcheung42 Dec 2, 2025
739e6c9
update step functions
Kcheung42 Dec 3, 2025
28c1e8b
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 3, 2025
2c9211f
add new feature files
Kcheung42 Dec 3, 2025
20aaa0d
update generate scenario
Kcheung42 Dec 3, 2025
d61a049
update generate matrix function signature to accept db
Kcheung42 Dec 3, 2025
78ab98c
clean
Kcheung42 Dec 3, 2025
faf7234
remove tests
Kcheung42 Dec 3, 2025
25c8caa
add wait for wizard after submodule navigation
Kcheung42 Dec 3, 2025
804fb5f
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 3, 2025
c2e19b1
update wait time
Kcheung42 Dec 3, 2025
45f1d4c
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Dec 3, 2025
21647c2
remove tests related to fire type
Kcheung42 Dec 4, 2025
2d947d1
return vectors for edn structure instead of lazy lists
Kcheung42 Dec 4, 2025
625c6bc
remove uncessary assert
Kcheung42 Dec 4, 2025
9ab4dd8
update test matrix data
Kcheung42 Dec 4, 2025
59328ad
update gherkin arg syntax
Kcheung42 Dec 5, 2025
46c8e31
update feature syntax
Kcheung42 Dec 5, 2025
3e1540d
clean wind direction feature
Kcheung42 Dec 5, 2025
42f005b
remove fire type scenarios
Kcheung42 Dec 5, 2025
e845055
remove mortality wind speed scenario
Kcheung42 Dec 5, 2025
f063af0
comment out surface crown wind adjustment factor scenario
Kcheung42 Dec 5, 2025
fe2d58a
fix 10-h fuel moisture tests
Kcheung42 Dec 8, 2025
6c8e782
clean tests
Kcheung42 Dec 8, 2025
2c3ba9f
clean wind adjustment factor
Kcheung42 Dec 8, 2025
9442f76
delete erroneous scenarios
Kcheung42 Dec 8, 2025
091977b
update fuel model
Kcheung42 Dec 8, 2025
c172ccf
remove invalid test
Kcheung42 Dec 8, 2025
561ecb7
add investigate comments
Kcheung42 Dec 8, 2025
50eb051
fix given
Kcheung42 Dec 8, 2025
867feca
refactor feature tests
Kcheung42 Dec 9, 2025
33cdbc0
rename feature files
Kcheung42 Dec 9, 2025
6973812
add tags
Kcheung42 Dec 10, 2025
eaf3446
increase wait
Kcheung42 Dec 10, 2025
6712961
update worksheet step
Kcheung42 Dec 10, 2025
dbd9f67
remove cucumber_test_generator component
Kcheung42 Dec 10, 2025
5944ebb
clean
Kcheung42 Dec 10, 2025
b41f0d4
update docstring
Kcheung42 Dec 10, 2025
fbb0c22
workspace file
Kcheung42 Dec 10, 2025
6751e9a
add headless option for running cucumber tests
Kcheung42 Dec 10, 2025
5cfaa56
add docstring to helper
Kcheung42 Dec 10, 2025
2c419b3
revert change
Kcheung42 Dec 10, 2025
f3e2514
add missing row entry in test
Kcheung42 Dec 10, 2025
a54f371
revert unintended chagnes
Kcheung42 Dec 10, 2025
26d43f7
fix deps.edn
Kcheung42 Dec 10, 2025
4f18c01
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Jun 8, 2026
1875e67
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Jun 8, 2026
939620e
fix merge conflict typo
Kcheung42 Jun 8, 2026
7cd5a08
rename wind-driven Surface Fire features
Kcheung42 Jun 8, 2026
4ca4009
update features
Kcheung42 Jun 16, 2026
af59058
extend cucumber test to test for outputs in results page
Kcheung42 Jun 22, 2026
c12a0d7
generate results page features
Kcheung42 Jun 23, 2026
1df54b0
BHP1-1610 Allow decimals in table shading filter fields
rjsheperd Jun 25, 2026
872af50
BHP1-1370 Show only valid units in Settings unit selectors
rjsheperd Jun 25, 2026
2c9c12b
BHP1-1354 Show Direction Mode in Surface & Crown
rjsheperd Jun 25, 2026
3502e1c
update feature files
Kcheung42 Jun 29, 2026
8ea44f1
introduce actions that set default values
Kcheung42 Jun 30, 2026
f7bc291
fix test matrix data
Kcheung42 Jul 2, 2026
d12d727
update feature tests
Kcheung42 Jul 7, 2026
657d0ca
update feature file
Kcheung42 Jul 7, 2026
76d3af2
update feature file
Kcheung42 Jul 7, 2026
1bb20cd
update generate scenarios
Kcheung42 Jul 8, 2026
278c044
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Jul 8, 2026
536b320
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Jul 8, 2026
499f8e8
add scripts to run cucumber tests
Kcheung42 Jul 8, 2026
de62897
add github ci
Kcheung42 Jul 9, 2026
134daf4
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Jul 9, 2026
1d07515
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Jul 9, 2026
fe1b05e
update to use button to dispatch action instead of PR
Kcheung42 Jul 9, 2026
2267572
add cucumber config
Kcheung42 Jul 9, 2026
88c5599
Merge branch 'BHP1-1435-feat-improve-cucumber-testing' into kc-BHP1-1…
Kcheung42 Jul 9, 2026
8606ccf
Merge branch 'kc-BHP1-1454-update-existing-cucumber-tests' into kc-BH…
Kcheung42 Jul 9, 2026
375c28b
output log when using gh ci pipeline
Kcheung42 Jul 10, 2026
80b7e60
output logs to gh actions
Kcheung42 Jul 10, 2026
5334ae4
make removing disclaimer more robust
Kcheung42 Jul 10, 2026
784cbed
consolidate find-browser and update msg pack
Kcheung42 Jul 10, 2026
9a1a028
bump github timeout
Kcheung42 Jul 13, 2026
737eaa7
fix flakey fails
Kcheung42 Jul 13, 2026
0ebb643
fix flakey fails
Kcheung42 Jul 13, 2026
6c43d31
update cucumber yml scope all
Kcheung42 Jul 14, 2026
73e558c
bump timeout minutes to maximum
Kcheung42 Jul 14, 2026
d9d18a3
fix scope query
Kcheung42 Jul 14, 2026
ca4abe9
update feature generation to ignore outputs with hide-results? true
Kcheung42 Jul 14, 2026
0cd1f96
add sharding
Kcheung42 Jul 16, 2026
313eba6
add missing files for sharding
Kcheung42 Jul 16, 2026
bfc2b7f
update cucubmer_shard to use proper config.ci.edn
Kcheung42 Jul 16, 2026
adce30c
fix chrome version
Kcheung42 Jul 16, 2026
d628a39
fix barkingfeatiure and remove duplicate cucumber:ci task, now using …
Kcheung42 Jul 20, 2026
47b9b63
rename cucumber:shard to cucumber:ci
Kcheung42 Jul 20, 2026
9d53774
update test matrix data
Kcheung42 Jul 20, 2026
c0070e2
clean up feature file exception
Kcheung42 Jul 20, 2026
f10036e
BHP1-1622 Fix Total Live and Dead Fuel Load returning NaN
rjsheperd Jul 20, 2026
71453bf
Update cucumber.yml
Kcheung42 Jul 20, 2026
32c73da
BHP1-1615 Round graph settings maximum up to next whole number
rjsheperd Jul 20, 2026
15be4ed
Merge pull request #268 from firelab/rj-BHP1-1622-fix-fuel-load
rjsheperd Jul 20, 2026
59be3d0
Merge pull request #269 from firelab/rj-BHP1-1615-round-graph-max
rjsheperd Jul 20, 2026
68e3dd1
Merge pull request #267 from firelab/rj-BHP1-1354-display-direction-m…
rjsheperd Jul 20, 2026
8f9a2dd
Merge pull request #266 from firelab/rj-BHP1-1370-fix-settings-unit-o…
rjsheperd Jul 20, 2026
816b84e
fix feature file
Kcheung42 Jul 21, 2026
ed4d0c7
add --headless remove --no-headless
Kcheung42 Jul 21, 2026
a650cd0
add failure gate for keeping browser open
Kcheung42 Jul 22, 2026
12d2ff0
update log
Kcheung42 Jul 22, 2026
97f9cd5
proccess map units when outputs are set to rows in results table
Kcheung42 Jul 22, 2026
042299b
Merge pull request #271 from firelab/rj-BHP1-1610-allow-decimals-in-t…
Kcheung42 Jul 22, 2026
f9c1a53
Merge pull request #270 from firelab/kc-BHP1-1623-fix-map-units-table
rjsheperd Jul 23, 2026
807188b
Fixed shortcut on Windows
rjsheperd Jul 7, 2026
04b7263
Use .exe file in lieu of .lnk for Windows shorcut, add tests
rjsheperd Jul 7, 2026
941b333
Add new exe file, remove old lnk
rjsheperd Jul 7, 2026
9515975
Add windows signing script with az-cli
rjsheperd Jul 7, 2026
ad23bba
Add babashka task for signing
rjsheperd Jul 8, 2026
636dd60
Fixes to UI
rjsheperd Jul 11, 2026
b507608
Fix Windows SQLite database path
rjsheperd Jul 11, 2026
3da602d
Update JCEF to 146.0.10
rjsheperd Jul 11, 2026
1e72d7a
Fix help keys dispatch error on settings page
rjsheperd Jul 21, 2026
48c54ab
Forward browser console messages to backend logs in JCEF mode
rjsheperd Jul 21, 2026
437f996
Fix LSMinimumSystemVersion for JCEF update
rjsheperd Jul 21, 2026
00390da
Fix Lint errors
rjsheperd Jul 23, 2026
5bed6c9
Merge pull request #272 from firelab/rj-v7.1.5-build
rjsheperd Jul 23, 2026
544c02d
Prevent 'VMS Sync' on Standalone CEF app
rjsheperd Jul 23, 2026
099132e
fix typo
Kcheung42 Jul 24, 2026
a40a4dd
handle group variable path collision when generating scenarios, and f…
Kcheung42 Jul 24, 2026
36de65c
up the wait time
Kcheung42 Jul 27, 2026
d196f66
BHP1-1607 Add missing unit enum members and conversion shorthands
rjsheperd Jul 29, 2026
b707460
BHP1-1607 Add missing units to VMS dimensions and domains
rjsheperd Jul 29, 2026
e39107a
BHP1-1607 Rebuild WASM and layout.msgpack with unit conversion tests
rjsheperd Jul 29, 2026
ef55d2a
BHP1-1607 Run CLJS test suite on every pull request
rjsheperd Jul 30, 2026
11d413f
BHP1-1607 Derive both test runners from a single test namespace list
rjsheperd Jul 30, 2026
f9434c4
BHP1-1607 Revert SAVR conversion change pending fire-science review
rjsheperd Jul 31, 2026
a3cfcd5
Merge pull request #273 from firelab/rj-BHP1-1607-add-missing-units
rjsheperd Aug 5, 2026
abedd8c
split cucumber gh
Kcheung42 Aug 10, 2026
28a0654
Merge branch 'main' into kc-BHP1-1454-update-existing-cucumber-tests
Kcheung42 Aug 10, 2026
98bc744
update development file
Kcheung42 Aug 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .dir-locals.el
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@
;; ((nil . ((cider-clojure-cli-aliases . "-A:dev:behave/vms")
;; (cider-default-cljs-repl . figwheel-main)
;; (cider-figwheel-main-default-options . "vms"))))


50 changes: 50 additions & 0 deletions .github/workflows/cljs-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: CLJS tests

on:
pull_request:
branches:
- main
workflow_dispatch:

jobs:
cljs-tests:
runs-on: ubuntu-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '21'

- uses: DeLaGuardo/setup-clojure@13.0
with:
cli: latest
bb: latest

- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
key: cljdeps-${{ hashFiles('deps.edn', 'projects/behave/deps.edn') }}
restore-keys: cljdeps-

- uses: browser-actions/setup-chrome@v1
id: chrome
with:
chrome-version: stable

# Prefetch deps so the test step is compile + run only.
- name: Prefetch deps
working-directory: projects/behave
run: clojure -P -M:test-ci

# Compiles the test build, launches headless Chrome via figwheel, runs
# the suite (behave.headless-test-runner), and exits pass/fail.
- name: Run CLJS test suite (headless Chrome)
working-directory: projects/behave
env:
CHROME_BIN: ${{ steps.chrome.outputs.chrome-path }}
run: bb test:ci
20 changes: 20 additions & 0 deletions .github/workflows/cucumber-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: cucumber (on PR core only)

# Runs the core cucumber suite automatically on every PR to main. The full/all scope
# stays on the manual push-button workflow (cucumber.yml).
on:
pull_request:
branches:
- main

# Cancel a still-running core run when the PR gets a new commit.
concurrency:
group: cucumber-pr-${{ github.ref }}
cancel-in-progress: true

jobs:
core:
uses: ./.github/workflows/cucumber-run.yml
with:
scope: core
timeout_minutes: 120 # core-only is far smaller than the 360 push-button cap; tune as needed
100 changes: 100 additions & 0 deletions .github/workflows/cucumber-run.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
name: cucumber (base)

# Reusable job shared by the push-button (cucumber.yml) and the PR (cucumber-pr.yml)
# workflows. Single source of truth for the cucumber CI steps.
on:
workflow_call:
inputs:
scope:
description: 'Which scenarios to run: core (@core, excluding @extended) or all (@core + @extended)'
type: string
default: core
features_dir:
description: 'Features dir (narrow to a subset, e.g. features/results-page)'
type: string
default: features
serve_timeout:
description: 'Seconds to wait for the app to become reachable'
type: string
default: '300'
shards:
description: 'Number of parallel shards (each = 1 Chrome + 1 app server; bump cautiously on RAM)'
type: string
default: '2'
timeout_minutes:
description: 'Job timeout in minutes (GitHub-hosted runner max is 360 / 6h)'
type: number
default: 360

jobs:
cucumber:
runs-on: ubuntu-latest
timeout-minutes: ${{ inputs.timeout_minutes }}
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '21'

- uses: DeLaGuardo/setup-clojure@13.0
with:
cli: latest # clojure CLI
bb: latest # babashka

- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
key: cljdeps-${{ hashFiles('deps.edn', 'projects/behave/deps.edn') }}
restore-keys: cljdeps-

# Install Chrome only. We deliberately do NOT install/pin chromedriver here — setup-chrome's
# "stable" chromedriver can drift a major version ahead of the browser (SessionNotCreated).
# Selenium Manager (bundled in Selenium 4.23) downloads the matching driver at runtime.
- uses: browser-actions/setup-chrome@v1
id: chrome
with:
chrome-version: stable

# Prefetch deps so the run is compile-only (all three classpaths the sharded run uses:
# driver, per-shard server, and the advanced CLJS compile).
- name: Prefetch deps
run: |
clojure -P -M:dev:behave/cms
clojure -P -M:dev:behave/app
(cd projects/behave && clojure -P -M:compile-cljs)

# Compiles the advanced CLJS build once, starts N isolated app servers (own port + DB
# each), splits features across them, runs N headless Chrome drivers in parallel, then
# merges + tears everything down. Non-zero exit fails the job. Inputs are read via env
# to avoid ${{ }} script injection.
- name: Run cucumber suite (sharded, headless, fresh DBs)
env:
# No CHROMEDRIVER_PATH — Selenium Manager auto-resolves a driver matching CHROME_BIN.
CHROME_BIN: ${{ steps.chrome.outputs.chrome-path }}
SCOPE: ${{ inputs.scope }}
FEATURES_DIR: ${{ inputs.features_dir }}
SERVE_TIMEOUT: ${{ inputs.serve_timeout }}
SHARDS: ${{ inputs.shards }}
run: |
case "$SCOPE" in
all) QUERY='(or "core" "extended")' ;;
*) QUERY='(and "core" (not "extended"))' ;;
esac
bb cucumber:ci \
--headless \
--shards "$SHARDS" \
--query "$QUERY" \
--features-dir "$FEATURES_DIR" \
--serve-timeout "$SERVE_TIMEOUT"

- uses: actions/upload-artifact@v4
if: always()
with:
name: cucumber-results
path: |
logs/cucumber/**
if-no-files-found: ignore
92 changes: 28 additions & 64 deletions .github/workflows/cucumber.yml
Original file line number Diff line number Diff line change
@@ -1,69 +1,33 @@
name: cucumber
name: cucumber (manual dispatch)

on:
pull_request:
push:
branches: [main]
workflow_dispatch:
inputs:
scope:
description: 'Which scenarios to run'
type: choice
default: core
options:
- core # @core, excluding @extended
- all # @core + @extended
features_dir:
description: 'Features dir (narrow to a subset, e.g. features/results-page)'
type: string
default: features
serve_timeout:
description: 'Seconds to wait for the app to become reachable'
type: string
default: '300'
shards:
description: 'Number of parallel shards (each = 1 Chrome + 1 app server; bump cautiously on RAM)'
type: string
default: '2'

jobs:
cucumber-core:
runs-on: ubuntu-latest
timeout-minutes: 45
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '21'

- uses: DeLaGuardo/setup-clojure@13.0
with:
cli: latest # clojure CLI
bb: latest # babashka

- uses: actions/cache@v4
with:
path: |
~/.m2/repository
~/.gitlibs
key: cljdeps-${{ hashFiles('deps.edn', 'projects/behave/deps.edn') }}
restore-keys: cljdeps-

# Matched Chrome + chromedriver (avoids Selenium SessionNotCreated version drift).
- uses: browser-actions/setup-chrome@v1
id: chrome
with:
chrome-version: stable
install-chromedriver: true

# Prefetch deps so the readiness window is compile-only (both classpaths the run uses).
- name: Prefetch deps
run: |
clojure -P -M:dev:behave/cms
(cd projects/behave && clojure -P -M:figwheel-lib)

# Starts the app (figwheel serve + init-config!/init-db!), runs the @core suite
# headless against a freshly-created empty DB (connect! creates it; VMS comes from
# the tracked layout.msgpack), then tears the app down. Non-zero exit fails the job.
- name: Run @core cucumber suite (headless, fresh DB)
env:
CHROME_BIN: ${{ steps.chrome.outputs.chrome-path }}
CHROMEDRIVER_PATH: ${{ steps.chrome.outputs.chromedriver-path }}
run: |
bb cucumber:ci \
--query '(and "core" (not "extended"))' \
--db-path ci-db.sqlite \
--serve-timeout 300

- uses: actions/upload-artifact@v4
if: always()
with:
name: cucumber-results
path: |
cucumber_test_results_*.org
cucumber_results_*.edn
cucumber_figwheel.log
cucumber_run.log
if-no-files-found: ignore
cucumber:
uses: ./.github/workflows/cucumber-run.yml
with:
scope: ${{ inputs.scope }}
features_dir: ${{ inputs.features_dir }}
serve_timeout: ${{ inputs.serve_timeout }}
shards: ${{ inputs.shards }}
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -232,3 +232,8 @@ projects/behave/resources/public/cljs-test/
projects/behave/resources/public/js/behave.js
projects/behave/projects/
projects/behave/resources/db.sqlite

# Cucumber test run artifacts (logs already covered by *.log above)
cucumber_results_*.edn
cucumber_test_results*.org
ci-db.sqlite
7 changes: 7 additions & 0 deletions bb.edn
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,13 @@
(shell "find projects/behave/resources/public/help/images -type f ( -iname \"*.jpg\" -o -iname \"*.jpeg\" -o -iname \"*.png\" ) -exec sh -c 'for file do convert \"$file\" \"${file%.*}.webp\" && echo \"Converted $file to ${file%.*}.webp\"; done' sh {} +")
(shell "find projects/behave/resources/public/help/images -type f ( -iname \"*.jpg\" -o -iname \"*.jpeg\" -o -iname \"*.png\" ) -exec rm {} +"))

;;; Cucumber
cucumber {:doc "Run the cucumber suite (app must already be running). Opts forwarded to scripts/run_cucumber_tests.clj: --headless --query --features-dir --steps-dir --retry-failed --stop --url --help"
:task (System/exit (:exit (apply shell {:continue true} "bb" "scripts/run_cucumber_tests.clj" *command-line-args*)))}

cucumber:ci {:doc "Cucumber run: compile the advanced CLJS build once, start isolated app server(s) (own port + DB each), run Chrome driver(s), then merge + tear down. DEFAULT is a visible browser: 1 shard, browser + server stay open until Ctrl-C. Pass --headless for the headless CI path: parallel sharding (default 2) and auto-close. Requires chromedriver on PATH. Opts: --headless (headless + parallel shards, auto-close), --shards N (default 2 with --headless; 1 in visible mode unless set), --feature F, --query, --features-dir, --serve-timeout, --db-prefix, --base-port, --skip-compile, --stop (halt at first failure; forces 1 shard unless --shards given)."
:task (System/exit (:exit (apply shell {:continue true} "bb" "scripts/cucumber_ci.clj" *command-line-args*)))}

;;; Datomic
-today (str (java.time.LocalDate/now))

Expand Down
2 changes: 1 addition & 1 deletion behave-lib/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ all: clean install

# NOTE Make sure to set WEBIDL in Enviornment Variables
bind:
${WEBIDL} include/idl/behave.idl include/js/glue
python ${WEBIDL} include/idl/behave.idl include/js/glue
mv include/js/glue.cpp include/cpp/emscripten/glue.cpp

compile: clean bind
Expand Down
Loading
Loading