kopia lustrzana https://github.com/nextcloud/social
				
				
				
			
		
			
				
	
	
		
			93 wiersze
		
	
	
		
			2.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
			
		
		
	
	
			93 wiersze
		
	
	
		
			2.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
| /**
 | |
|  * SPDX-FileCopyrightText: 2023 Nextcloud GmbH and Nextcloud contributors
 | |
|  * SPDX-License-Identifier: AGPL-3.0-or-later
 | |
|  */
 | |
| import {
 | |
| 	configureNextcloud,
 | |
| 	startNextcloud,
 | |
| 	stopNextcloud,
 | |
| 	waitOnNextcloud,
 | |
| } from './cypress/dockerNode'
 | |
| import { defineConfig } from 'cypress'
 | |
| 
 | |
| import browserify from '@cypress/browserify-preprocessor'
 | |
| import getCompareSnapshotsPlugin from 'cypress-visual-regression/dist/plugin'
 | |
| 
 | |
| export default defineConfig({
 | |
| 	projectId: '7mqhfh',
 | |
| 
 | |
| 	// 16/9 screen ratio
 | |
| 	viewportWidth: 1280,
 | |
| 	viewportHeight: 720,
 | |
| 
 | |
| 	// Tries again 2 more times on failure
 | |
| 	retries: {
 | |
| 		runMode: 2,
 | |
| 		// do not retry in `cypress open`
 | |
| 		openMode: 0,
 | |
| 	},
 | |
| 
 | |
| 	// Needed to trigger `after:run` events with cypress open
 | |
| 	experimentalInteractiveRunEvents: true,
 | |
| 
 | |
| 	// faster video processing
 | |
| 	videoCompression: false,
 | |
| 
 | |
| 	// Visual regression testing
 | |
| 	env: {
 | |
| 		failSilently: false,
 | |
| 		type: 'actual',
 | |
| 	},
 | |
| 	screenshotsFolder: 'cypress/snapshots/actual',
 | |
| 	trashAssetsBeforeRuns: true,
 | |
| 
 | |
| 	e2e: {
 | |
| 		testIsolation: false,
 | |
| 
 | |
| 		// We've imported your old cypress plugins here.
 | |
| 		// You may want to clean this up later by importing these.
 | |
| 		async setupNodeEvents(on, config) {
 | |
| 			// Fix browserslist extend https://github.com/cypress-io/cypress/issues/2983#issuecomment-570616682
 | |
| 			on('file:preprocessor', browserify({ typescript: require.resolve('typescript') }))
 | |
| 			getCompareSnapshotsPlugin(on, config)
 | |
| 
 | |
| 			// Disable spell checking to prevent rendering differences
 | |
| 			on('before:browser:launch', (browser, launchOptions) => {
 | |
| 				if (browser.family === 'chromium' && browser.name !== 'electron') {
 | |
| 					launchOptions.preferences.default['browser.enable_spellchecking'] = false
 | |
| 					return launchOptions
 | |
| 				}
 | |
| 
 | |
| 				if (browser.family === 'firefox') {
 | |
| 					launchOptions.preferences['layout.spellcheckDefault'] = 0
 | |
| 					return launchOptions
 | |
| 				}
 | |
| 
 | |
| 				if (browser.name === 'electron') {
 | |
| 					launchOptions.preferences.spellcheck = false
 | |
| 					return launchOptions
 | |
| 				}
 | |
| 			})
 | |
| 
 | |
| 			// Remove container after run
 | |
| 			on('after:run', () => {
 | |
| 				stopNextcloud()
 | |
| 			})
 | |
| 
 | |
| 			// Before the browser launches
 | |
| 			// starting Nextcloud testing container
 | |
| 			return startNextcloud(process.env.BRANCH)
 | |
| 				.then((ip) => {
 | |
| 					// Setting container's IP as base Url
 | |
| 					config.baseUrl = `http://${ip}/index.php`
 | |
| 					return ip
 | |
| 				})
 | |
| 				.then(waitOnNextcloud)
 | |
| 				.then(() => configureNextcloud(process.env.BRANCH))
 | |
| 				.then(() => {
 | |
| 					return config
 | |
| 				})
 | |
| 		},
 | |
| 	},
 | |
| })
 |