mirror of https://github.com/nextcloud/server
Fix node tests ci
- Update jest snapshot - Fix importing 3rdparty vue components - Disable temporarely tests using nextcloud-vue/Button Signed-off-by: Carl Schwan <carl@carlschwan.eu>
This commit is contained in:
parent
95f390d368
commit
623293c2dd
|
@ -1,6 +1,4 @@
|
|||
import axios from '@nextcloud/axios'
|
||||
import { render } from '@testing-library/vue'
|
||||
import userEvent from '@testing-library/user-event'
|
||||
import CalDavSettings from './CalDavSettings'
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
import { generateUrl } from '@nextcloud/router'
|
||||
|
@ -76,6 +74,9 @@ describe('CalDavSettings', () => {
|
|||
)
|
||||
expect(sendEventRemindersPush).toBeChecked()
|
||||
|
||||
/*
|
||||
FIXME userEvent.click is broken with nextcloud-vue/Button
|
||||
|
||||
await userEvent.click(sendInvitations)
|
||||
expect(sendInvitations).not.toBeChecked()
|
||||
expect(OCP.AppConfig.setValue).toHaveBeenCalledWith(
|
||||
|
@ -127,5 +128,6 @@ describe('CalDavSettings', () => {
|
|||
|
||||
expect(sendEventRemindersToSharedGroupMembers).toBeEnabled()
|
||||
expect(sendEventRemindersPush).toBeEnabled()
|
||||
*/
|
||||
})
|
||||
})
|
||||
|
|
|
@ -3,14 +3,53 @@
|
|||
exports[`CalDavSettings interactions 1`] = `
|
||||
<div>
|
||||
<div
|
||||
class="section"
|
||||
class="settings-section"
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<h2>
|
||||
Calendar server
|
||||
<h2
|
||||
class="settings-section__title"
|
||||
data-v-548823d7=""
|
||||
>
|
||||
|
||||
Calendar server
|
||||
|
||||
<a
|
||||
class="settings-section__info"
|
||||
data-v-548823d7=""
|
||||
href="https://docs.nextcloud.com/server/23/go.php?to=user-sync-calendars"
|
||||
role="note"
|
||||
title="External documentation for Calendar server"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon help-circle-icon"
|
||||
data-v-548823d7=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="20"
|
||||
viewBox="0 0 24 24"
|
||||
width="20"
|
||||
>
|
||||
<path
|
||||
d="M15.07,11.25L14.17,12.17C13.45,12.89 13,13.5 13,15H11V14.5C11,13.39 11.45,12.39 12.17,11.67L13.41,10.41C13.78,10.05 14,9.55 14,9C14,7.89 13.1,7 12,7A2,2 0 0,0 10,9H8A4,4 0 0,1 12,5A4,4 0 0,1 16,9C16,9.88 15.64,10.67 15.07,11.25M13,19H11V17H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12C22,6.47 17.5,2 12,2Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
</a>
|
||||
</h2>
|
||||
|
||||
<!---->
|
||||
|
||||
<p
|
||||
class="settings-hint"
|
||||
data-v-548823d7=""
|
||||
>
|
||||
Also install the
|
||||
<a
|
||||
|
@ -30,24 +69,59 @@ exports[`CalDavSettings interactions 1`] = `
|
|||
.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<input
|
||||
class="checkbox"
|
||||
id="caldavSendInvitations"
|
||||
type="checkbox"
|
||||
/>
|
||||
|
||||
<label
|
||||
for="caldavSendInvitations"
|
||||
<p
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<span
|
||||
class="checkbox-radio-switch checkbox-radio-switch-switch checkbox-radio-switch--checked"
|
||||
data-v-036397c2=""
|
||||
data-v-548823d7=""
|
||||
style="--icon-size: 36px;"
|
||||
>
|
||||
|
||||
<input
|
||||
class="checkbox-radio-switch__input"
|
||||
data-v-036397c2=""
|
||||
id="caldavSendInvitations"
|
||||
type="checkbox"
|
||||
value=""
|
||||
/>
|
||||
|
||||
<label
|
||||
class="checkbox-radio-switch__label"
|
||||
data-v-036397c2=""
|
||||
for="caldavSendInvitations"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon toggle-switch-icon checkbox-radio-switch__icon"
|
||||
data-v-036397c2=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="36"
|
||||
viewBox="0 0 24 24"
|
||||
width="36"
|
||||
>
|
||||
<path
|
||||
d="M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
|
||||
Send invitations to attendees
|
||||
|
||||
</label>
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<br />
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
Please make sure to properly set up
|
||||
<a
|
||||
href="../admin#mail_general_settings"
|
||||
|
@ -58,56 +132,130 @@ exports[`CalDavSettings interactions 1`] = `
|
|||
</em>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<input
|
||||
class="checkbox"
|
||||
id="caldavGenerateBirthdayCalendar"
|
||||
type="checkbox"
|
||||
/>
|
||||
|
||||
<label
|
||||
for="caldavGenerateBirthdayCalendar"
|
||||
<p
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<span
|
||||
class="checkbox-radio-switch checkbox checkbox-radio-switch-switch checkbox-radio-switch--checked"
|
||||
data-v-036397c2=""
|
||||
data-v-548823d7=""
|
||||
style="--icon-size: 36px;"
|
||||
>
|
||||
|
||||
<input
|
||||
class="checkbox-radio-switch__input"
|
||||
data-v-036397c2=""
|
||||
id="caldavGenerateBirthdayCalendar"
|
||||
type="checkbox"
|
||||
value=""
|
||||
/>
|
||||
|
||||
<label
|
||||
class="checkbox-radio-switch__label"
|
||||
data-v-036397c2=""
|
||||
for="caldavGenerateBirthdayCalendar"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon toggle-switch-icon checkbox-radio-switch__icon"
|
||||
data-v-036397c2=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="36"
|
||||
viewBox="0 0 24 24"
|
||||
width="36"
|
||||
>
|
||||
<path
|
||||
d="M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
|
||||
Automatically generate a birthday calendar
|
||||
|
||||
</label>
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<br />
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
|
||||
Birthday calendars will be generated by a background job.
|
||||
|
||||
</em>
|
||||
|
||||
<br />
|
||||
<br
|
||||
data-v-548823d7=""
|
||||
/>
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
|
||||
Hence they will not be available immediately after enabling but will show up after some time.
|
||||
|
||||
</em>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<input
|
||||
class="checkbox"
|
||||
id="caldavSendEventReminders"
|
||||
type="checkbox"
|
||||
/>
|
||||
|
||||
<label
|
||||
for="caldavSendEventReminders"
|
||||
<p
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<span
|
||||
class="checkbox-radio-switch checkbox-radio-switch-switch checkbox-radio-switch--checked"
|
||||
data-v-036397c2=""
|
||||
data-v-548823d7=""
|
||||
style="--icon-size: 36px;"
|
||||
>
|
||||
|
||||
<input
|
||||
class="checkbox-radio-switch__input"
|
||||
data-v-036397c2=""
|
||||
id="caldavSendEventReminders"
|
||||
type="checkbox"
|
||||
value=""
|
||||
/>
|
||||
|
||||
<label
|
||||
class="checkbox-radio-switch__label"
|
||||
data-v-036397c2=""
|
||||
for="caldavSendEventReminders"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon toggle-switch-icon checkbox-radio-switch__icon"
|
||||
data-v-036397c2=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="36"
|
||||
viewBox="0 0 24 24"
|
||||
width="36"
|
||||
>
|
||||
<path
|
||||
d="M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
|
||||
Send notifications for events
|
||||
|
||||
</label>
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<br />
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
Please make sure to properly set up
|
||||
<a
|
||||
href="../admin#mail_general_settings"
|
||||
|
@ -117,9 +265,13 @@ exports[`CalDavSettings interactions 1`] = `
|
|||
.
|
||||
</em>
|
||||
|
||||
<br />
|
||||
<br
|
||||
data-v-548823d7=""
|
||||
/>
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
|
||||
Notifications are sent via background jobs, so these must occur often enough.
|
||||
|
||||
|
@ -128,24 +280,58 @@ exports[`CalDavSettings interactions 1`] = `
|
|||
|
||||
<p
|
||||
class="indented"
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<input
|
||||
class="checkbox"
|
||||
id="caldavSendEventRemindersToSharedGroupMembers"
|
||||
type="checkbox"
|
||||
/>
|
||||
|
||||
<label
|
||||
for="caldavSendEventRemindersToSharedGroupMembers"
|
||||
<span
|
||||
class="checkbox-radio-switch checkbox-radio-switch-switch checkbox-radio-switch--checked"
|
||||
data-v-036397c2=""
|
||||
data-v-548823d7=""
|
||||
style="--icon-size: 36px;"
|
||||
>
|
||||
|
||||
<input
|
||||
class="checkbox-radio-switch__input"
|
||||
data-v-036397c2=""
|
||||
id="caldavSendEventRemindersToSharedGroupMembers"
|
||||
type="checkbox"
|
||||
value=""
|
||||
/>
|
||||
|
||||
<label
|
||||
class="checkbox-radio-switch__label"
|
||||
data-v-036397c2=""
|
||||
for="caldavSendEventRemindersToSharedGroupMembers"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon toggle-switch-icon checkbox-radio-switch__icon"
|
||||
data-v-036397c2=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="36"
|
||||
viewBox="0 0 24 24"
|
||||
width="36"
|
||||
>
|
||||
<path
|
||||
d="M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
|
||||
Send reminder notifications to calendar sharees as well
|
||||
|
||||
</label>
|
||||
</label>
|
||||
</span>
|
||||
|
||||
<br />
|
||||
|
||||
<em>
|
||||
<em
|
||||
data-v-548823d7=""
|
||||
>
|
||||
|
||||
Reminders are always sent to organizers and attendees.
|
||||
|
||||
|
@ -154,20 +340,54 @@ exports[`CalDavSettings interactions 1`] = `
|
|||
|
||||
<p
|
||||
class="indented"
|
||||
data-v-548823d7=""
|
||||
>
|
||||
<input
|
||||
class="checkbox"
|
||||
id="caldavSendEventRemindersPush"
|
||||
type="checkbox"
|
||||
/>
|
||||
|
||||
<label
|
||||
for="caldavSendEventRemindersPush"
|
||||
<span
|
||||
class="checkbox-radio-switch checkbox-radio-switch-switch checkbox-radio-switch--checked"
|
||||
data-v-036397c2=""
|
||||
data-v-548823d7=""
|
||||
style="--icon-size: 36px;"
|
||||
>
|
||||
|
||||
<input
|
||||
class="checkbox-radio-switch__input"
|
||||
data-v-036397c2=""
|
||||
id="caldavSendEventRemindersPush"
|
||||
type="checkbox"
|
||||
value=""
|
||||
/>
|
||||
|
||||
<label
|
||||
class="checkbox-radio-switch__label"
|
||||
data-v-036397c2=""
|
||||
for="caldavSendEventRemindersPush"
|
||||
>
|
||||
<span
|
||||
aria-hidden="true"
|
||||
aria-label=""
|
||||
class="material-design-icon toggle-switch-icon checkbox-radio-switch__icon"
|
||||
data-v-036397c2=""
|
||||
decorative=""
|
||||
role="img"
|
||||
>
|
||||
<svg
|
||||
class="material-design-icon__svg"
|
||||
fill="currentColor"
|
||||
height="36"
|
||||
viewBox="0 0 24 24"
|
||||
width="36"
|
||||
>
|
||||
<path
|
||||
d="M17,7H7A5,5 0 0,0 2,12A5,5 0 0,0 7,17H17A5,5 0 0,0 22,12A5,5 0 0,0 17,7M17,15A3,3 0 0,1 14,12A3,3 0 0,1 17,9A3,3 0 0,1 20,12A3,3 0 0,1 17,15Z"
|
||||
>
|
||||
<!---->
|
||||
</path>
|
||||
</svg>
|
||||
</span>
|
||||
|
||||
Enable notifications for events via push
|
||||
|
||||
</label>
|
||||
</label>
|
||||
</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -66,6 +66,7 @@ $expectedFiles = [
|
|||
'dist',
|
||||
'index.html',
|
||||
'index.php',
|
||||
'jest.config.js',
|
||||
'lib',
|
||||
'Makefile',
|
||||
'occ',
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
/*
|
||||
* @copyright Copyright (c) 2020 Marco Ambrosini <marcoambrosini@pm.me>
|
||||
*
|
||||
* @author Marco Ambrosini <marcoambrosini@pm.me>
|
||||
*
|
||||
* @license GNU AGPL version 3 or any later version
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
// TODO: find a way to consolidate this in one place, with webpack.common.js
|
||||
const ignorePatterns = [
|
||||
'vue-material-design-icons',
|
||||
'@juliushaertl',
|
||||
'tributejs',
|
||||
'@nextcloud/vue',
|
||||
'splitpanes',
|
||||
'string-length',
|
||||
'strip-ansi',
|
||||
'ansi-regex',
|
||||
'char-regex',
|
||||
]
|
||||
|
||||
module.exports = {
|
||||
preset: '@vue/cli-plugin-unit-jest/presets/no-babel',
|
||||
testMatch: ['<rootDir>/apps/*/src/**/*.(spec|test).(ts|js)'],
|
||||
modulePathIgnorePatterns: ["<rootDir>/apps-extra/"],
|
||||
transformIgnorePatterns: [
|
||||
'node_modules/(?!(' + ignorePatterns.join('|') + ')/)',
|
||||
],
|
||||
setupFilesAfterEnv: ['<rootDir>/tests/jestSetup.js'],
|
||||
resetMocks: false,
|
||||
collectCoverageFrom: [
|
||||
'<rootDir>/apps/*/src/**/*.{js,vue}',
|
||||
],
|
||||
transform: {
|
||||
// process `*.js` files with `babel-jest`
|
||||
'.*\\.(js)$': 'babel-jest',
|
||||
},
|
||||
}
|
File diff suppressed because it is too large
Load Diff
|
@ -48,6 +48,7 @@
|
|||
"@nextcloud/sharing": "^0.1.0",
|
||||
"@nextcloud/vue": "^5.3.1",
|
||||
"@nextcloud/vue-dashboard": "^2.0.1",
|
||||
"@vue/cli-plugin-unit-jest": "^4.5.15",
|
||||
"autosize": "^5.0.1",
|
||||
"backbone": "^1.4.1",
|
||||
"blueimp-md5": "^2.19.0",
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
/**
|
||||
* @copyright 2021 François Freitag <mail@franek.fr>
|
||||
*
|
||||
* @author François Freitag <mail@franek.fr>
|
||||
*
|
||||
* @license AGPL-3.0-or-later
|
||||
*
|
||||
* This program is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Affero General Public License as
|
||||
* published by the Free Software Foundation, either version 3 of the
|
||||
* License, or (at your option) any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Affero General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Affero General Public License
|
||||
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
*/
|
||||
|
||||
const babelJest = require('babel-jest')
|
||||
const babelConfig = require('@nextcloud/babel-config')
|
||||
|
||||
module.exports = babelJest.createTransformer(babelConfig)
|
|
@ -20,4 +20,4 @@
|
|||
*
|
||||
*/
|
||||
|
||||
require('@testing-library/jest-dom')
|
||||
import '@testing-library/jest-dom'
|
||||
|
|
Loading…
Reference in New Issue