UNPKG

@microtica/mocks

Version:

Mock services for automated tests

36 lines 1.56 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const AWS = require("aws-sdk"); const mock = require("mock-require"); const uuid = require("uuid"); const mock_service_1 = require("../mock-service"); class CodeBuild extends mock_service_1.MockService { createProject(input) { this.storage.insert(input.name, input); return this.responseConstructor.returnResolve({}); } updateProject(input) { this.storage.insert(input.name, input); return this.responseConstructor.returnResolve({}); } startBuild(input) { const id = `${uuid.v4()}:${uuid.v4()}`; this.storage.insert(id, input); return this.responseConstructor.returnResolve({ build: { id } }); } batchGetBuilds(input) { const buildsFound = input.ids.map(id => (this.storage.get(id))).filter(Boolean); const buildsNotFound = input.ids.filter(id => !buildsFound.includes(id)); const builds = buildsFound.map(build => (Object.assign({}, build, { buildComplete: true }))); return this.responseConstructor.returnResolve({ builds, buildsNotFound }); } batchGetProjects(input) { const projects = input.names.map(name => this.storage.get(name)).filter(Boolean); const projectsNotFound = input.names.filter(name => !projects.includes(name)); return this.responseConstructor.returnResolve({ projects, projectsNotFound }); } } exports.CodeBuild = CodeBuild; AWS.CodeBuild = CodeBuild; mock("aws-sdk", AWS); //# sourceMappingURL=codebuild.js.map