diff --git a/client/cypress/e2e/job-import/converting.cy.js b/client/cypress/e2e/job-import/converting.cy.js
index 93347deb8..acf8bad25 100644
--- a/client/cypress/e2e/job-import/converting.cy.js
+++ b/client/cypress/e2e/job-import/converting.cy.js
@@ -57,9 +57,9 @@ describe(
cy.get("#driveable").should("have.class", "ant-switch").click();
cy.get("#towin").should("have.class", "ant-switch").click();
- // cy.get('[data-cy="convert-button"]').click();
+ cy.get('[data-cy="convert-button"]').click();
- // cy.get(".ant-notification-notice-message").contains("successfully");
+ cy.get(".ant-notification-notice-message").contains("successfully");
});
}
);
diff --git a/client/cypress/e2e/job-import/job-import.cy.js b/client/cypress/e2e/job-import/job-import.cy.js
index 8a829b95c..7e3d02d3c 100644
--- a/client/cypress/e2e/job-import/job-import.cy.js
+++ b/client/cypress/e2e/job-import/job-import.cy.js
@@ -15,9 +15,7 @@ describe(
cy.get('[data-cy="sign-in-button"]').click();
}
});
- });
- it("checks if there are available jobs", () => {
cy.get('[data-cy="available-jobs-table"]')
.find("tr")
.should("not.have.class", "ant-table-placeholder");
@@ -39,5 +37,69 @@ describe(
cy.url().should("include", "/manage/jobs");
});
+
+ it("imports a supplement for an existing job", () => {
+ cy.get('[data-cy="add-job-as-supplement"]')
+ .filter(":enabled")
+ .first()
+ .click();
+
+ cy.get('[data-cy="existing-jobs-table"]')
+ .find(".ant-table-tbody tr")
+ .should("not.have.class", "ant-table-placeholder")
+ .first()
+ .click();
+
+ cy.get('[data-cy="existing-jobs-ok-button"]')
+ .should("not.be", "disabled")
+ .click();
+
+ cy.get(".ant-notification-notice-message")
+ .contains("Job supplemented successfully.")
+ .click();
+
+ cy.url().should("include", "/manage/jobs");
+ });
+
+ it("imports a job with an existing owner", () => {
+ let hasOwner = false;
+
+ cy.get('[data-cy="add-job-as-new-button"]')
+ .filter(":enabled")
+ .each(($el) => {
+ cy.then(() => {
+ if (hasOwner) return false;
+
+ cy.wrap($el).click();
+
+ // check if table is not empty
+ cy.get('[data-cy="existing-owner-table"]', { timeout: 20000 })
+ .find(".ant-table-tbody tr")
+ .should("not.have.class", "ant-table-placeholder")
+ .then(($table) => {
+ if ($table.length === 0) {
+ cy.get('[data-cy="existing-owners-cancel-button"]').click();
+ }
+
+ cy.wrap($table).first().click();
+
+ cy.get('[data-cy="new_owner_checkbox"]').should(
+ "not.be",
+ "checked"
+ );
+
+ hasOwner = true;
+ });
+ });
+ });
+
+ cy.get('[data-cy="existing-owners-ok-button"]').click();
+
+ cy.get(".ant-notification-notice-message")
+ .contains("Job created successfully. Click to view.")
+ .click();
+
+ cy.url().should("include", "/manage/jobs");
+ });
}
);
diff --git a/client/src/components/jobs-available-table/jobs-available-table.component.jsx b/client/src/components/jobs-available-table/jobs-available-table.component.jsx
index 513e795e0..be282547d 100644
--- a/client/src/components/jobs-available-table/jobs-available-table.component.jsx
+++ b/client/src/components/jobs-available-table/jobs-available-table.component.jsx
@@ -177,7 +177,10 @@ export function JobsAvailableComponent({
>
-