1/* -*- Mode: C++; tab-width: 4; c-basic-offset: 4; indent-tabs-mode: nil -*- */ 2/* 3 * Copyright 2017 Couchbase, Inc 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 */ 17 18#pragma once 19 20#include "globaltask.h" 21 22#include <string> 23 24/** 25 * Mock Task class. Doesn't actually run() or snooze() - they both do nothing. 26 */ 27class MockGlobalTask : public GlobalTask { 28public: 29 MockGlobalTask(Taskable& t, TaskId id) : GlobalTask(t, id) { 30 } 31 32 bool run() override { 33 return false; 34 } 35 std::string getDescription() override { 36 return "MockGlobalTask"; 37 } 38 39 std::chrono::microseconds maxExpectedDuration() override { 40 // Shouldn't matter what this returns 41 return std::chrono::seconds(0); 42 } 43 44 void snooze(const double secs) override { 45 } 46}; 47