I'm using Emacs and projectile and trying to set the path to a test file so that I can use projectile-toggle-between-implementation-and-test
.
I call M-xprojectile-find-test-file but the Helm buffer is empty. Whatever I put in the pattern
field, no file shows up in the Helm buffer to select and entering the test file path relative to the project root just causes a Dired buffer to open at the project root.
Please advise how to use projectile-find-test-file
projectile
guesses the test file name given a source file by adding suffix/prefix to your source file. For example, if you have a hello.rb
then it tries to find a file called hello_test.rb
in your project.
It by default has some rules that maps from project type to test suffix/prefix. Here is the actual code:
(defun projectile-test-suffix (project-type)
"Find default test files suffix based on PROJECT-TYPE."
(cond
((member project-type '(rails-rspec ruby-rspec)) "_spec")
((member project-type '(rails-test ruby-test lein-test go)) "_test")
((member project-type '(scons)) "test")
((member project-type '(maven symfony)) "Test")
((member project-type '(gradle grails)) "Spec")))
If you don't see anything in projectile-find-test-file
that means most likely it cannot find anything related to your source file by adding suffix/prefix.
This can be customized via projectile-test-suffix-function
. By default the variable points to the function above, but you can override it with your own rules.