Looking at your linked source code, I see that your code is placed in lib/electric_sheeps/shell/remote_shell.rb
and not in lib/shell/remote_shell.rb
as indicated, thus your spec must be placed in spec/electric_sheeps/shell/remote_shell_spec.rb
so the mapping works.
You could also rewrite the watcher so it ignores the module folder
guard :minitest do
# with Minitest::Spec
watch(%r{^spec/(.*)_spec\.rb})
watch(%r{^lib/electric_sheeps/(.+)\.rb}) { |m| "spec/#{m[1]}_spec.rb" }
watch(%r{^spec/spec_helper\.rb}) { 'spec' }
end
but then the mapping for lib/electric_sheeps.rb
would not work.