DEV: improve usability of subfolder specs

Previously people were not consistent about mocking which left internals in
a fragile state when running subfolder specs.

This introduces a simple helper `set_subfolder` which you can use to set
the subfolder for the spec. It takes care of proper configuration of subfolder
and teardown.

```
# usage
set_subfolder "/my_amazing_subfolder"
```

You should no longer stub base_uri or global_settings
This commit is contained in:
Sam Saffron
2019-11-15 16:48:24 +11:00
parent 40d14ba166
commit e7cf4579a8
18 changed files with 38 additions and 68 deletions

View File

@ -129,4 +129,14 @@ module Helpers
ensure
$stdout = old_stdout
end
def set_subfolder(f)
global_setting :relative_url_root, f
old_root = ActionController::Base.config.relative_url_root
ActionController::Base.config.relative_url_root = f
before_next_spec do
ActionController::Base.config.relative_url_root = old_root
end
end
end