Skip to content
This repository was archived by the owner on Apr 13, 2020. It is now read-only.
55 changes: 16 additions & 39 deletions src/commands/deployment/validate.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,7 @@ import uuid from "uuid/v4";
import * as deploymenttable from "../../lib/azure/deploymenttable";
import {
DeploymentTable,
RowACRToHLDPipeline,
RowHLDToManifestPipeline,
RowManifest,
RowSrcToACRPipeline,
DeploymentEntry,
} from "../../lib/azure/deploymenttable";
import * as storage from "../../lib/azure/storage";
import { deepClone } from "../../lib/util";
Expand Down Expand Up @@ -69,16 +66,11 @@ jest.spyOn(storage, "isStorageAccountNameAvailable").mockImplementation(
}
);

let mockedDB: Array<
| RowSrcToACRPipeline
| RowACRToHLDPipeline
| RowHLDToManifestPipeline
| RowManifest
> = [];
let mockedDB: Array<DeploymentEntry> = [];

jest.spyOn(deploymenttable, "findMatchingDeployments").mockImplementation(
(): Promise<RowSrcToACRPipeline[]> => {
const array: RowSrcToACRPipeline[] = [];
(): Promise<DeploymentEntry[]> => {
const array: DeploymentEntry[] = [];
return new Promise((resolve) => {
mockedDB.forEach((row) => {
if (row.p1 === "500") {
Expand All @@ -93,13 +85,7 @@ jest.spyOn(deploymenttable, "findMatchingDeployments").mockImplementation(
jest
.spyOn(deploymenttable, "insertToTable")
.mockImplementation(
(
tableInfo: deploymenttable.DeploymentTable,
entry:
| RowSrcToACRPipeline
| RowACRToHLDPipeline
| RowHLDToManifestPipeline
) => {
(tableInfo: deploymenttable.DeploymentTable, entry: DeploymentEntry) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return new Promise<any>((resolve) => {
mockedDB.push(entry);
Expand All @@ -120,26 +106,17 @@ jest.spyOn(deploymenttable, "deleteFromTable").mockImplementation(async () => {

jest
.spyOn(deploymenttable, "updateEntryInTable")
.mockImplementation(
(
tableInfo: DeploymentTable,
entry:
| RowSrcToACRPipeline
| RowACRToHLDPipeline
| RowHLDToManifestPipeline
| RowManifest
) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return new Promise<any>((resolve) => {
mockedDB.forEach((row, index: number) => {
if (row.RowKey === entry.RowKey) {
mockedDB[index] = entry;
resolve(entry);
}
}, mockedDB);
});
}
);
.mockImplementation((tableInfo: DeploymentTable, entry: DeploymentEntry) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return new Promise<any>((resolve) => {
mockedDB.forEach((row, index: number) => {
if (row.RowKey === entry.RowKey) {
mockedDB[index] = entry;
resolve(entry);
}
}, mockedDB);
});
});

jest.spyOn(Math, "random").mockImplementation((): number => {
return 0.5;
Expand Down
6 changes: 3 additions & 3 deletions src/commands/deployment/validate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import {
deleteFromTable,
findMatchingDeployments,
DeploymentTable,
EntrySRCToACRPipeline,
DeploymentEntry,
updateACRToHLDPipeline,
} from "../../lib/azure/deploymenttable";
import { build as buildCmd, exit as exitCmd } from "../../lib/commandBuilder";
Expand Down Expand Up @@ -176,10 +176,10 @@ export const deleteSelfTestData = async (
).then(async (results) => {
logger.info("Deleting test data...");
let foundEntry = false;
const entries = results as EntrySRCToACRPipeline[];
const entries = results as DeploymentEntry[];
try {
for (const entry of entries) {
if (entry.p1 && entry.p1._ === buildId) {
if (entry.p1 && entry.p1 === buildId) {
foundEntry = true;
}
await deleteFromTable(tableInfo, entry);
Expand Down
Loading