/* * Copyright (C) 2020 Intel Corporation * * SPDX-License-Identifier: MIT */ /// context('Actions on rectangle', () => { const caseId = '8' const labelName = `Case ${caseId}` const taskName = `New annotation task for ${labelName}` const attrName = `Attr for ${labelName}` const textDefaultValue = 'Some default value for type Text' const imageFileName = `image_${labelName.replace(' ', '_').toLowerCase()}` const image = `${imageFileName}.png` const newLabelName = `New ${labelName}` const width = 800 const height = 800 const posX = 10 const posY = 10 const color = 'gray' const createRectangleShape2Points = { points: 'By 2 Points', type: 'Shape', switchLabel: false, firstX: 250, firstY: 350, secondX: 350, secondY: 450 } const createRectangleShape4Points = { points: 'By 4 Points', type: 'Shape', switchLabel: false, firstX: 400, firstY: 350, secondX: 500, secondY: 350, thirdX: 500, thirdY: 450, fourthX: 400, fourthY: 450 } const createRectangleTrack2Points = { points: 'By 2 Points', type: 'Track', switchLabel: false, firstX: createRectangleShape2Points.firstX, firstY: createRectangleShape2Points.firstY - 150, secondX: createRectangleShape2Points.secondX, secondY: createRectangleShape2Points.secondY -150 } const createRectangleTrack4Points = { points: 'By 4 Points', type: 'Track', switchLabel: false, firstX: createRectangleShape4Points.firstX, firstY: createRectangleShape4Points.firstY - 150, secondX: createRectangleShape4Points.secondX - 100, secondY: createRectangleShape4Points.secondY - 50, thirdX: createRectangleShape4Points.thirdX, thirdY: createRectangleShape4Points.thirdY - 150, fourthX: createRectangleShape4Points.fourthX, fourthY: createRectangleShape4Points.fourthY - 150 } const createRectangleShape2PointsNewLabel = { labelName: newLabelName, points: 'By 2 Points', type: 'Shape', switchLabel: true, firstX: createRectangleShape2Points.firstX, firstY: createRectangleShape2Points.firstY + 150, secondX: createRectangleShape2Points.secondX, secondY: createRectangleShape2Points.secondY + 150 } const createRectangleShape4PointsNewLabel = { labelName: newLabelName, points: 'By 4 Points', type: 'Shape', switchLabel: true, firstX: createRectangleShape4Points.firstX, firstY: createRectangleShape4Points.firstY + 150, secondX: createRectangleShape4Points.secondX, secondY: createRectangleShape4Points.secondY + 150, thirdX: createRectangleShape4Points.thirdX, thirdY: createRectangleShape4Points.thirdY + 150, fourthX: createRectangleShape4Points.fourthX, fourthY: createRectangleShape4Points.fourthY + 150 } before(() => { cy.visit('auth/login') cy.login() cy.imageGenerator('cypress/fixtures', image, width, height, color, posX, posY, labelName) cy.createAnnotationTask(taskName, labelName, attrName, textDefaultValue, image) cy.openTask(taskName) }) describe(`Testing case "${caseId}"`, () => { it('Add new label', () => { cy.contains('button', 'Add label').click() cy.get('[placeholder="Label name"]').type(newLabelName) cy.contains('button', 'Done').click() }) it('Open a job', () => { cy.openJob() }) it('Draw a rectangle shape in two ways (by 2 points, by 4 points)', () => { cy.createRectangle(createRectangleShape2Points) cy.get('#cvat_canvas_shape_1') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-1') .should('contain', '1').and('contain', 'RECTANGLE SHAPE').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', labelName) }) cy.createRectangle(createRectangleShape4Points) cy.get('#cvat_canvas_shape_2') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-2') .should('contain', '2').and('contain', 'RECTANGLE SHAPE').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', labelName) }) }) it('Draw a rectangle track in two ways (by 2 points, by 4 points)', () => { cy.createRectangle(createRectangleTrack2Points) cy.get('#cvat_canvas_shape_3') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-3') .should('contain', '3').and('contain', 'RECTANGLE TRACK').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', labelName) }) cy.createRectangle(createRectangleTrack4Points) cy.get('#cvat_canvas_shape_4') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-4') .should('contain', '4').and('contain', 'RECTANGLE TRACK').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', labelName) }) }) it('Draw a new rectangle shape in two ways (by 2 points, by 4 points) with second label', () => { cy.createRectangle(createRectangleShape2PointsNewLabel) cy.get('#cvat_canvas_shape_5') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-5') .should('contain', '5').and('contain', 'RECTANGLE SHAPE').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', newLabelName) }) cy.createRectangle(createRectangleShape4PointsNewLabel) cy.get('#cvat_canvas_shape_6') .should('exist').and('be.visible') cy.get('#cvat-objects-sidebar-state-item-6') .should('contain', '6').and('contain', 'RECTANGLE SHAPE').within(() => { cy.get('.ant-select-selection-selected-value') .should('contain', newLabelName) }) }) }) })