Increase testability through dependency injection

- Remove existing integration tests for hooks as they're redundant after
  this change.
- Document the pattern in relevant documentation.
- Introduce `useEnvironment` to increase testability.
- Update components to inject dependencies rather than importing hooks
  directly.
This commit is contained in:
undergroundwires
2023-08-15 18:11:30 +02:00
parent 39e650cf11
commit ae75059cc1
32 changed files with 209 additions and 201 deletions

View File

@@ -3,8 +3,6 @@ import { buildContext } from '@/application/Context/ApplicationContextFactory';
import App from './components/App.vue';
import { ApplicationBootstrapper } from './bootstrapping/ApplicationBootstrapper';
let vue: Vue;
buildContext().then(() => {
// hack workaround to solve running tests through
// Vue CLI throws 'Top-level-await is only supported in EcmaScript Modules'
@@ -12,9 +10,7 @@ buildContext().then(() => {
new ApplicationBootstrapper()
.bootstrap(Vue);
vue = new Vue({
new Vue({
render: (h) => h(App),
}).$mount('#app');
});
export const getVue = () => vue; // exporting is hack until Vue 3 so vue-js-modal can be used