mirror of
https://github.com/nextcloud/server.git
synced 2026-02-24 18:37:44 -05:00
- Drop reliance on deprecated global jQuery object.
- Allow testing user interactions.
- Use newer technology stack.
---
Test user interactions with the groupware dav settings
Add infrastructure to test Vue components:
- Use recommended libraries:
- https://vuejs.org/v2/guide/testing.html#Recommendations
- Use jest-dom for robust assertions on the DOM state
- Use user-event to be more representative of user actions
- Code is transpiled by Jest, with the help of vue-jest.
Ignore test files for no-unpublished-import. Prevent ESLint from
flagging:
```
/home/runner/work/server/server/apps/dav/src/views/CalDavSettings.spec.js
Error: 1:24 error "@testing-library/vue" is not published node/no-unpublished-import
Error: 2:23 error "@testing-library/user-event" is not published node/no-unpublished-import
```
Signed-off-by: François Freitag <mail@franek.fr>
24 lines
673 B
JavaScript
24 lines
673 B
JavaScript
import Vue from 'vue'
|
|
import { loadState } from '@nextcloud/initial-state'
|
|
import { translate } from '@nextcloud/l10n'
|
|
import CalDavSettings from './views/CalDavSettings'
|
|
|
|
Vue.prototype.$t = translate
|
|
|
|
const View = Vue.extend(CalDavSettings)
|
|
const CalDavSettingsView = new View({
|
|
name: 'CalDavSettingsView',
|
|
data() {
|
|
return {
|
|
sendInvitations: loadState('dav', 'sendInvitations'),
|
|
generateBirthdayCalendar: loadState(
|
|
'dav',
|
|
'generateBirthdayCalendar'
|
|
),
|
|
sendEventReminders: loadState('dav', 'sendEventReminders'),
|
|
sendEventRemindersPush: loadState('dav', 'sendEventRemindersPush'),
|
|
}
|
|
},
|
|
})
|
|
|
|
CalDavSettingsView.$mount('#settings-admin-caldav')
|