From 27c4546fc9857561ec747f8a64337a44077f0bf8 Mon Sep 17 00:00:00 2001 From: Jon Marius Venstad Date: Fri, 6 Apr 2018 13:02:46 +0200 Subject: Add mock for tests! --- .../controller/deployment/MockBuildService.java | 40 ++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/MockBuildService.java (limited to 'controller-server') diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/MockBuildService.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/MockBuildService.java new file mode 100644 index 00000000000..80b56867308 --- /dev/null +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/MockBuildService.java @@ -0,0 +1,40 @@ +// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.hosted.controller.deployment; + +import com.yahoo.vespa.hosted.controller.api.integration.BuildService; +import com.yahoo.vespa.hosted.controller.application.DeploymentJobs; +import com.yahoo.vespa.hosted.controller.application.DeploymentJobs.JobType; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author jvenstad + */ +public class MockBuildService implements BuildService { + + private final List jobs = new ArrayList<>(); + + @Override + public boolean trigger(BuildJob buildJob) { + return jobs.add(buildJob); + } + + /** List all running jobs. */ + public List jobs() { + return new ArrayList<>(jobs); + } + + /** List and remove all running jobs. */ + public List takeJobsToRun() { + List jobsToRun = jobs(); + jobs.clear(); + return jobsToRun; + } + + /** Remove all running jobs for the given project. */ + public boolean removeJob(long projectId, JobType jobType) { + return jobs.remove(new BuildJob(projectId, jobType.jobName())); + } + +} -- cgit v1.2.3