Don't set gon variables in JSON requests
What does this MR do?
Currently, on each request "gon variables" are
generated. These variables are only used by JS when serving HTML. For JSON requests those aren't needed and used but generated.
This MR avoids generating gon variables for JSON requests.
Additionally, this MR adds some missing specs for adding gon variables.
Are there points in the code the reviewer needs to double check?
Why was this MR needed?
Running less code if not needed is always good
Not generating gon variables in JSON requests is especially beneficial in a development/test environment as it's doing less sprockets-work (i.e. IO)
Does this MR meet the acceptance criteria?
- Changelog entry added, if necessary
- Documentation created/updated
- API support added
- Tests added for this feature/bug
- Conforms to the code review guidelines
- Conforms to the merge request performance guidelines
- Conforms to the style guides
- Conforms to the database guides
- If you have multiple commits, please combine them into a few logically organized commits by squashing them
- Internationalization required/considered
End-to-end tests pass (
package-and-qamanual pipeline job)