ananthakumaran / exunit.el Goto Github PK
View Code? Open in Web Editor NEWEmacs ExUnit test runner
Emacs ExUnit test runner
When using doom-themes
, I was hitting an issue where the compilation buffer output was difficult to read. I was going to customize the font-lock values in the compilation buffer, but it appears that the buffer does not have any defined.
Looking at alchemist.el's implementation, it looks like it had several faces defined.
I am not an expert on defface
and all that, so please correct me if I am mistaken on my approach to customizing the output.
In my environment with Spacemacs when I run the test, for example with exunit-verify
the cursor turns purple. This seems to be related to the evil-mode
state changing, but I'm not sure what is triggering that. Possibly something with the read-only trigger? Is there a way to stop the cursor/state from changing?
I think this is a good command to have by default. I can create a PR for this, but first I wanted to know the opinions.
It would be great to be able to use exunit.el
inside a Docker container.
Copying the idea from RSpec Mode, maybe exunit.el
could have some parameters (such as exunit-use-docker-when-possible
, exunit-docker-container
, exunit-docker-command
and exunit-docker-cwd
) which would essentially turn the test commands prepended by docker exec -it <exunit-docker-container> bash -c "cd <exunit-docker-cwd> && <command_to_run_test> "
.
What do you think?
I would like to occasionally run the tests in an individual file in order. This can be accomplished by passing --seed
to mix test:
--seed - seeds the random number generator used to randomize the order of tests; --seed 0 disables randomization
from https://hexdocs.pm/mix/Mix.Tasks.Test.html
Would this be best as a new function like exunit-verify-non-random
? Or some other method?
The title says it all.
C-u
has no effect on the exunit commands in Doom Emacs. I cannot figure out why this is.
For ease of setting up the keybindings, at least.
Similar to rspec-toggle-spec-and-target
.
It would be really nice to have a command like exunit-verify-rerun-last-test
that would re-run the last test that was ran. Ideally for me this would re-run it from the same directory that it ran from previously and would be projectile aware (although that might be overkill).
Thanks for this project! It's very helpful.
I've got exunit.el
installed in my emacs via DOOM and I'm having this issue every time I try to run the tests (or iex for that matter) in any buffer.
-*- mode: exunit-compilation; default-directory: "~/src/api/" -*-
ExUnit Compilation started at Thu Jun 23 11:16:36
mix test test/api/data/kafka_producer_test.exs
Could not start Hex. Try fetching a new version with "mix local.hex" or uninstalling it with "mix archive.uninstall hex.ez"
** (MatchError) no match of right hand side value: {:error, {:ssl, {'no such file or directory', 'ssl.app'}}}
(hex 1.0.1) lib/hex.ex:5: Hex.start/0
(mix 1.13.3) lib/mix/hex.ex:59: Mix.Hex.start/0
(mix 1.13.3) lib/mix/dep/loader.ex:194: Mix.Dep.Loader.with_scm_and_app/4
(mix 1.13.3) lib/mix/dep/loader.ex:147: Mix.Dep.Loader.to_dep/3
(elixir 1.13.3) lib/enum.ex:1593: Enum."-map/2-lists^map/1-0-"/2
(mix 1.13.3) lib/mix/dep/loader.ex:364: Mix.Dep.Loader.mix_children/2
(mix 1.13.3) lib/mix/dep/loader.ex:18: Mix.Dep.Loader.children/0
(mix 1.13.3) lib/mix/dep/converger.ex:57: Mix.Dep.Converger.all/4
ExUnit Compilation exited abnormally with code 1 at Thu Jun 23 11:16:37
This seems to me that exunit.el
is not running in the context of the right shell (or maybe is being compiled without my shell env?) However, when I open eshell
and run commands like elixir -v
, iex -S mix
, or mix test
everything works just fine. Running (exunit-project-root)
from eshell
returns the right directory.
I'm sorta new to emacs so please let me know if I'm doing something horribly wrong or if this isn't the right way to go about solving this issue. Thank you for the package!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.