roschaefer 825ad6d266 Fix cypress tests
Since `dotenv` in the backend now loads configuration from a file
relative to the current file, we don't have to duplicate the neo4j
configuration settings here.
2019-12-05 21:00:24 +01:00

54 lines
1.2 KiB
JavaScript

import Factory from '../../backend/src/seed/factories'
import { getDriver, getNeode } from '../../backend/src/bootstrap/neo4j'
import neode from 'neode'
const backendHost = Cypress.env('SEED_SERVER_HOST')
const neo4jDriver = getDriver()
const neodeInstance = getNeode()
const factoryOptions = { seedServerHost: backendHost, neo4jDriver, neodeInstance }
const factory = Factory(factoryOptions)
beforeEach(async () => {
await factory.cleanDatabase()
})
Cypress.Commands.add('neode', () => {
return neodeInstance
})
Cypress.Commands.add(
'first',
{ prevSubject: true },
async (neode, model, properties) => {
return neode.first(model, properties)
}
)
Cypress.Commands.add(
'relateTo',
{ prevSubject: true },
async (node, otherNode, relationship) => {
return node.relateTo(otherNode, relationship)
}
)
Cypress.Commands.add('factory', () => {
return Factory(factoryOptions)
})
Cypress.Commands.add(
'create',
{ prevSubject: true },
async (factory, node, properties) => {
await factory.create(node, properties)
return factory
}
)
Cypress.Commands.add(
'relate',
{ prevSubject: true },
async (factory, node, relationship, properties) => {
await factory.relate(node, relationship, properties)
return factory
}
)