From 9f2ccb8f81fa690e25518a4e378bea985a64b5be Mon Sep 17 00:00:00 2001 From: Kirill Lakhov Date: Thu, 16 Jun 2022 09:37:31 +0300 Subject: [PATCH] Improved stability of actions_tasks2/case_101_opencv_basic_actions.js (#58) --- .../controls-side-bar/opencv-control.tsx | 9 +++---- .../controls-side-bar/tools-control.tsx | 24 ++++++++++++------- .../case_101_opencv_basic_actions.js | 5 ++-- 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/opencv-control.tsx b/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/opencv-control.tsx index 0b1eba16..3101e367 100644 --- a/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/opencv-control.tsx +++ b/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/opencv-control.tsx @@ -486,12 +486,13 @@ class OpenCVControlComponent extends React.PureComponent 1 ? 'objects are' : 'object is' } being tracked..`, - 0, - ); + duration: 0, + className: 'cvat-tracking-notice', + }); const imageData = this.getCanvasImageData(); for (const shape of trackingData[trackerID]) { const [objectState] = objectStates.filter( diff --git a/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/tools-control.tsx b/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/tools-control.tsx index b932a63a..81aa581e 100644 --- a/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/tools-control.tsx +++ b/cvat-ui/src/components/annotation-page/standard-workspace/controls-side-bar/tools-control.tsx @@ -351,7 +351,11 @@ export class ToolsControlComponent extends React.PureComponent { this.interaction.latestRequest = null; try { - this.interaction.hideMessage = message.loading(`Waiting a response from ${activeInteractor?.name}..`, 0); + this.interaction.hideMessage = message.loading({ + content: `Waiting a response from ${activeInteractor?.name}..`, + duration: 0, + className: 'cvat-tracking-notice', + }); try { // run server request this.setState({ fetching: true }); @@ -697,12 +701,13 @@ export class ToolsControlComponent extends React.PureComponent { const trackableObjects = trackingData.stateless[trackerID]; const numOfObjects = trackableObjects.clientIDs.length; - hideMessage = message.loading( - `${tracker.name}: states are being initialized for ${numOfObjects} ${ + hideMessage = message.loading({ + content: `${tracker.name}: states are being initialized for ${numOfObjects} ${ numOfObjects > 1 ? 'objects' : 'object' } ..`, - 0, - ); + duration: 0, + className: 'cvat-tracking-notice', + }); // eslint-disable-next-line no-await-in-loop const response = await core.lambda.call(jobInstance.taskId, tracker, { frame: frame - 1, @@ -742,12 +747,13 @@ export class ToolsControlComponent extends React.PureComponent { const trackableObjects = trackingData.statefull[trackerID]; const numOfObjects = trackableObjects.clientIDs.length; - hideMessage = message.loading( - `${tracker.name}: ${numOfObjects} ${ + hideMessage = message.loading({ + content: `${tracker.name}: ${numOfObjects} ${ numOfObjects > 1 ? 'objects are' : 'object is' } being tracked..`, - 0, - ); + duration: 0, + className: 'cvat-tracking-notice', + }); // eslint-disable-next-line no-await-in-loop const response = await core.lambda.call(jobInstance.taskId, tracker, { frame: frame - 1, diff --git a/tests/cypress/integration/actions_tasks2/case_101_opencv_basic_actions.js b/tests/cypress/integration/actions_tasks2/case_101_opencv_basic_actions.js index a2015452..25341b8f 100644 --- a/tests/cypress/integration/actions_tasks2/case_101_opencv_basic_actions.js +++ b/tests/cypress/integration/actions_tasks2/case_101_opencv_basic_actions.js @@ -194,16 +194,17 @@ context('OpenCV. Intelligent scissors. Histogram Equalization. TrackerMIL.', () }); it('Create a shape with "TrackerMIL". Track it for several frames.', () => { - // Track shape and move from 0 to 1 frame to init tracker - // We will start testing tracking from 2 frame because it's a bit unstable on inintialization + // We will start testing tracking from 2-d frame because it's a bit unstable on inintialization cy.createOpenCVTrack(createOpencvTrackerShape); cy.goToNextFrame(1); + cy.get('.cvat-tracking-notice').should('not.exist'); cy.get('#cvat_canvas_shape_3') .then((shape) => { const x = Math.round(shape.attr('x')); const y = Math.round(shape.attr('y')); for (let i = 2; i < imagesCount; i++) { cy.goToNextFrame(i); + cy.get('.cvat-tracking-notice').should('not.exist'); // In the beginning of this test we created images with text // On each frame text is moved by 5px on x and y axis, // so we expect shape to be close to real text positions