mirror of
https://github.com/discourse/discourse.git
synced 2025-02-16 01:12:48 +08:00
![Martin Brennan](/assets/img/avatar_default.png)
Our method of loading a subset of client settings into tests via tests/helpers/site-settings.js can be improved upon. Currently we have a hardcoded subset of the client settings, which may get out of date and not have the correct defaults. As well as this plugins do not get their settings into the tests, so whenever you need a setting from a plugin, even if it has a default, you have to do needs.setting({ ... }) which is inconvenient. This commit introduces an ember CLI build step to take the site_settings.yml and all the plugin settings.yml files, pull out the client settings, and dump them into a variable in a single JS file we can load in our tests, so we have the correct selection of settings and default values in our JS tests. It also fixes many, many tests that were operating under incorrect assumptions or old settings. Co-authored-by: Joffrey JAFFEUX <j.jaffeux@gmail.com>
74 lines
2.7 KiB
HTML
74 lines
2.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
|
|
<title>Discourse Tests</title>
|
|
<meta name="description" content="" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<meta property="og:title" content="Discourse Tests" />
|
|
<meta property="og:url" content="{{rootURL}}" />
|
|
|
|
{{content-for "head"}} {{content-for "test-head"}}
|
|
|
|
<link rel="stylesheet" href="{{rootURL}}assets/vendor.css" />
|
|
<link rel="stylesheet" href="{{rootURL}}assets/test-support.css" />
|
|
<link rel="stylesheet" href="{{rootURL}}assets/testem.css" />
|
|
|
|
{{content-for "head-footer"}} {{content-for "test-head-footer"}}
|
|
|
|
<style>
|
|
#ember-testing * {
|
|
-webkit-transition: none !important;
|
|
-moz-transition: none !important;
|
|
-o-transition: none !important;
|
|
transition: none !important;
|
|
}
|
|
#ember-testing {
|
|
background-color: white;
|
|
}
|
|
#qunit-fixture {
|
|
position: absolute;
|
|
top: -10000px;
|
|
left: -10000px;
|
|
width: 1000px;
|
|
height: 1000px;
|
|
}
|
|
</style>
|
|
|
|
<script src="{{rootURL}}assets/test-i18n.js"></script>
|
|
<script src="{{rootURL}}assets/test-site-settings.js"></script>
|
|
</head>
|
|
<body>
|
|
{{content-for "body"}} {{content-for "test-body"}}
|
|
|
|
<script src="/testem.js" integrity="" data-embroider-ignore></script>
|
|
<script src="{{rootURL}}assets/vendor.js"></script>
|
|
<ember-auto-import-scripts entrypoint="app"></ember-auto-import-scripts>
|
|
<script src="{{rootURL}}assets/test-support.js"></script>
|
|
<ember-auto-import-scripts entrypoint="tests"></ember-auto-import-scripts>
|
|
<script src="{{rootURL}}assets/discourse.js"></script>
|
|
<script src="{{rootURL}}assets/markdown-it-bundle.js"></script>
|
|
<script src="{{rootURL}}assets/admin.js"></script>
|
|
<script src="{{rootURL}}assets/wizard.js"></script>
|
|
|
|
<template id="dynamic-test-js">
|
|
{{content-for "test-plugin-css"}}
|
|
{{content-for "test-plugin-js"}}
|
|
<script defer src="{{rootURL}}assets/test-helpers.js"></script>
|
|
<script defer src="{{rootURL}}assets/core-tests.js"></script>
|
|
{{content-for "test-plugin-tests-js"}}
|
|
<script defer src="{{rootURL}}assets/scripts/discourse-test-trigger-ember-cli-boot.js"></script>
|
|
<script defer src="{{rootURL}}assets/scripts/discourse-boot.js"></script>
|
|
{{content-for "body-footer"}} {{content-for "test-body-footer"}}
|
|
</template>
|
|
|
|
<discourse-dynamic-test-js>
|
|
</discourse-dynamic-test-js>
|
|
|
|
<!-- This script takes the <template>, filters plugin assets as required, then appends to discourse-dynamic-test-js -->
|
|
<script src="{{rootURL}}assets/scripts/discourse-test-load-dynamic-js.js"></script>
|
|
|
|
</body>
|
|
</html>
|