Skip to content

Instantly share code, notes, and snippets.

@josevalim
Last active May 22, 2024 10:06
Show Gist options
  • Save josevalim/a5e747c90a72e40a4b52062ea6919877 to your computer and use it in GitHub Desktop.
Save josevalim/a5e747c90a72e40a4b52062ea6919877 to your computer and use it in GitHub Desktop.
A 1LOC bash script for re-running tests whenever a lib/ or test/ file changes keeping the same VM instance
# You will need fswatch installed (available in homebrew and friends)
# The command below will run tests and wait until fswatch writes something.
# The --stale flag will only run stale entries, it requires Elixir v1.3.
fswatch lib/ test/ | mix test --stale --listen-on-stdin
@kuon
Copy link

kuon commented Jan 29, 2017

--listen-on-stdin doesn't seem to be supported, my take on this:

fswatch -0 --latency=0.01 --one-per-batch lib test web  | xargs -0 -n 1 mix test --stale test/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment