blob: 9d7ee876aff87c3d4a280b8ffedfb67c334a7cfb [file] [log] [blame] [edit]
// Copyright 2013 The Flutter Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef TESTING_CANVAS_TEST_H_
#define TESTING_CANVAS_TEST_H_
#include "flutter/fml/macros.h"
#include "flutter/testing/mock_canvas.h"
#include "gtest/gtest.h"
#include "third_party/skia/include/core/SkColorSpace.h"
namespace flutter {
namespace testing {
// This fixture allows creating tests that make use of a mock |SkCanvas|.
template <typename BaseT>
class CanvasTestBase : public BaseT {
public:
CanvasTestBase() = default;
MockCanvas& mock_canvas() { return canvas_; }
SkColorSpace* mock_color_space() { return color_space_.get(); }
private:
MockCanvas canvas_;
sk_sp<SkColorSpace> color_space_ = SkColorSpace::MakeSRGB();
FML_DISALLOW_COPY_AND_ASSIGN(CanvasTestBase);
};
using CanvasTest = CanvasTestBase<::testing::Test>;
} // namespace testing
} // namespace flutter
#endif // TESTING_CANVAS_TEST_H_