2019-02-21 23:20:32 +00:00
|
|
|
import {Organization} from '@influxdata/influx'
|
|
|
|
|
2019-02-22 01:38:11 +00:00
|
|
|
describe('Tasks', () => {
|
2019-02-19 23:47:19 +00:00
|
|
|
beforeEach(() => {
|
|
|
|
cy.flush()
|
|
|
|
|
2019-02-26 22:05:53 +00:00
|
|
|
cy.signin().then(({body}) => {
|
2019-02-21 23:20:32 +00:00
|
|
|
cy.wrap(body.org).as('org')
|
2019-02-19 23:47:19 +00:00
|
|
|
})
|
|
|
|
|
|
|
|
cy.visit('/tasks')
|
|
|
|
})
|
|
|
|
|
|
|
|
it('can create a task', () => {
|
2019-02-21 22:52:19 +00:00
|
|
|
const taskName = '🦄ask'
|
2019-02-19 23:47:19 +00:00
|
|
|
cy.get('.empty-state').within(() => {
|
|
|
|
cy.contains('Create').click()
|
|
|
|
})
|
|
|
|
|
2019-02-21 22:52:19 +00:00
|
|
|
cy.getByInputName('name').type(taskName)
|
|
|
|
cy.getByInputName('interval').type('1d')
|
|
|
|
cy.getByInputName('offset').type('20m')
|
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('flux-editor').within(() => {
|
2019-02-21 22:52:19 +00:00
|
|
|
cy.get('textarea').type(
|
2019-02-25 11:38:04 +00:00
|
|
|
`from(bucket: "defbuck")
|
2019-02-21 22:52:19 +00:00
|
|
|
|> range(start: -2m)`,
|
|
|
|
{force: true}
|
|
|
|
)
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.contains('Save').click()
|
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('task-row')
|
2019-02-21 23:20:32 +00:00
|
|
|
.should('have.length', 1)
|
2019-02-21 22:52:19 +00:00
|
|
|
.and('contain', taskName)
|
|
|
|
})
|
|
|
|
|
2019-03-01 03:04:33 +00:00
|
|
|
// TODO: wait on delete
|
|
|
|
it.skip('can delete a task', () => {
|
2019-02-21 23:20:32 +00:00
|
|
|
cy.get<Organization>('@org').then(({id}) => {
|
|
|
|
cy.createTask(id)
|
|
|
|
cy.createTask(id)
|
|
|
|
})
|
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('task-row').should('have.length', 2)
|
2019-02-21 23:20:32 +00:00
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('confirmation-button')
|
2019-02-21 23:20:32 +00:00
|
|
|
.first()
|
|
|
|
.click({force: true})
|
|
|
|
|
2019-03-01 03:04:33 +00:00
|
|
|
cy.wait(500)
|
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('task-row').should('have.length', 1)
|
2019-02-21 23:20:32 +00:00
|
|
|
})
|
|
|
|
|
2019-02-21 22:52:19 +00:00
|
|
|
it('fails to create a task without a valid script', () => {
|
|
|
|
cy.get('.empty-state').within(() => {
|
|
|
|
cy.contains('Create').click()
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.getByInputName('name').type('🦄ask')
|
2019-02-19 23:47:19 +00:00
|
|
|
cy.getByInputName('interval').type('1d')
|
|
|
|
cy.getByInputName('offset').type('20m')
|
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('flux-editor').within(() => {
|
2019-02-19 23:47:19 +00:00
|
|
|
cy.get('textarea').type('{}', {force: true})
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.contains('Save').click()
|
2019-02-21 22:52:19 +00:00
|
|
|
|
2019-02-26 01:41:18 +00:00
|
|
|
cy.getByTestID('notification-error').should('exist')
|
2019-02-19 23:47:19 +00:00
|
|
|
})
|
2019-02-27 19:21:21 +00:00
|
|
|
|
|
|
|
describe('labeling', () => {
|
2019-02-27 22:17:15 +00:00
|
|
|
it('can click to filter tasks by labels', () => {
|
2019-02-27 19:21:21 +00:00
|
|
|
const newLabelName = 'click-me'
|
|
|
|
|
|
|
|
cy.get<Organization>('@org').then(({id}) => {
|
|
|
|
cy.createTask(id).then(({body}) => {
|
|
|
|
cy.createLabel('tasks', body.id, newLabelName)
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.createTask(id).then(({body}) => {
|
|
|
|
cy.createLabel('tasks', body.id, 'bar')
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.visit('/tasks')
|
|
|
|
|
|
|
|
cy.getByTestID('task-row').should('have.length', 2)
|
|
|
|
|
|
|
|
cy.getByTestID(`label--pill ${newLabelName}`).click()
|
|
|
|
|
|
|
|
cy.getByTestID('task-row').should('have.length', 1)
|
|
|
|
})
|
|
|
|
})
|
|
|
|
|
|
|
|
describe('searching', () => {
|
|
|
|
it('can search by task name', () => {
|
|
|
|
const searchName = 'beepBoop'
|
|
|
|
cy.get<Organization>('@org').then(({id}) => {
|
|
|
|
cy.createTask(id, searchName)
|
|
|
|
cy.createTask(id)
|
|
|
|
})
|
|
|
|
|
|
|
|
cy.visit('/tasks')
|
|
|
|
|
|
|
|
cy.getByTestID('search-widget').type('bEE')
|
|
|
|
|
|
|
|
cy.getByTestID('task-row').should('have.length', 1)
|
|
|
|
})
|
|
|
|
})
|
2019-02-19 23:47:19 +00:00
|
|
|
})
|