mirror of https://github.com/nocodb/nocodb
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
107 lines
3.7 KiB
107 lines
3.7 KiB
3 years ago
|
|
||
|
export const defaultDbParams = {
|
||
3 years ago
|
databaseType: 0, // MySQL
|
||
3 years ago
|
hostAddress: 'localhost',
|
||
|
portNumber: '3306',
|
||
|
username: 'root',
|
||
|
password: 'password',
|
||
|
databaseName: 'sakila'
|
||
3 years ago
|
}
|
||
|
|
||
|
// database
|
||
|
// validation details
|
||
|
// advSettings: left navigation bar (audit, metadata, auth, transient view modes)
|
||
|
// editSchema: create table, add/update/delete column
|
||
|
// editData: add/ update/ delete row, cell contents
|
||
|
// editComment: add comment
|
||
|
// shareView: right navigation bar (share options)
|
||
|
export const roles = {
|
||
|
owner: {
|
||
|
name: 'owner',
|
||
|
credentials: { username: 'user@nocodb.com', password: 'Password123.' },
|
||
|
validations: { advSettings: true, editSchema: true, editData: true, editComment: true, shareView: true }
|
||
|
},
|
||
|
creator: {
|
||
|
name: 'creator',
|
||
|
credentials: { username: 'creator@nocodb.com', password: 'Password123.' },
|
||
|
validations: { advSettings: true, editSchema: true, editData: true, editComment: true, shareView: true }
|
||
|
},
|
||
|
editor: {
|
||
|
name: 'editor',
|
||
|
credentials: { username: 'editor@nocodb.com', password: 'Password123.' },
|
||
|
validations: { advSettings: false, editSchema: false, editData: true, editComment: true, shareView: false }
|
||
|
},
|
||
|
commenter: {
|
||
|
name: 'commenter',
|
||
|
credentials: { username: 'commenter@nocodb.com', password: 'Password123.' },
|
||
|
validations: { advSettings: false, editSchema: false, editData: false, editComment: true, shareView: false }
|
||
|
},
|
||
|
viewer: {
|
||
|
name: 'viewer',
|
||
|
credentials: { username: 'viewer@nocodb.com', password: 'Password123.' },
|
||
|
validations: { advSettings: false, editSchema: false, editData: false, editComment: false, shareView: false }
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// default projects
|
||
|
//
|
||
|
export const staticProjects = {
|
||
|
sampleREST: {
|
||
|
basic: { dbType: 'none', apiType: 'REST', name: 'sampleREST' },
|
||
|
config: {}
|
||
|
},
|
||
|
sampleGQL: {
|
||
|
basic: { dbType: 'none', apiType: 'GQL', name: 'sampleGQL' },
|
||
|
config: {}
|
||
|
},
|
||
|
externalREST: {
|
||
|
basic: { dbType: 'external', apiType: 'REST', name: 'externalREST' },
|
||
|
config: defaultDbParams
|
||
|
},
|
||
|
externalGQL: {
|
||
|
basic: { dbType: 'external', apiType: 'GQL', name: 'externalGQL' },
|
||
|
config: defaultDbParams
|
||
|
}
|
||
3 years ago
|
}
|
||
|
|
||
|
// return TRUE if test suite specified is activated from env-variables
|
||
|
//
|
||
|
export const isTestSuiteActive = (type, xcdb) => {
|
||
|
const env = Cypress.env('testMode')
|
||
|
if( !xcdb ) {
|
||
|
switch( type ) {
|
||
|
case 'rest': return env.includes('extREST')?true:false;
|
||
|
case 'graphql': return env.includes('extGQL')?true:false;
|
||
|
}
|
||
|
} else {
|
||
|
switch( type ) {
|
||
|
case 'rest': return env.includes('xcdbREST')?true:false;
|
||
|
case 'graphql': return env.includes('xcdbGQL')?true:false;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// expecting different modes to be seperated by a .
|
||
|
export const getPrimarySuite = () => {
|
||
|
const env = Cypress.env('testMode').split('.')
|
||
|
switch(env[0]) {
|
||
|
case 'extREST': return staticProjects.externalREST;
|
||
|
case 'extGQL': return staticProjects.externalGQL;
|
||
|
case 'xcdbREST': return staticProjects.sampleREST;
|
||
|
case 'xcdbGQL': return staticProjects.sampleGQL;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
export const isSecondarySuite = (proj, xcdb) => {
|
||
|
if(!isTestSuiteActive(proj, xcdb))
|
||
|
return false;
|
||
|
|
||
|
const env = Cypress.env('testMode').split('.')
|
||
|
|
||
|
switch(env[0]) {
|
||
|
case 'extREST': return (proj=='rest' && !xcdb)?false:true;
|
||
|
case 'extGQL': return (proj=='graphql' && !xcdb)?false:true;
|
||
|
case 'xcdbREST': return (proj=='rest' && xcdb)?false:true;
|
||
|
case 'xcdbGQL': return (proj=='graphql' && xcdb)?false:true;
|
||
|
}
|
||
3 years ago
|
}
|