• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2021 The Dawn Authors
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 //     http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 
15 #ifndef TESTS_UNITTESTS_NATIVE_MOCKS_RENDERPIPELINE_MOCK_H_
16 #define TESTS_UNITTESTS_NATIVE_MOCKS_RENDERPIPELINE_MOCK_H_
17 
18 #include "dawn_native/Device.h"
19 #include "dawn_native/RenderPipeline.h"
20 
21 #include <gmock/gmock.h>
22 
23 namespace dawn_native {
24 
25     class RenderPipelineMock : public RenderPipelineBase {
26       public:
RenderPipelineMock(DeviceBase * device)27         RenderPipelineMock(DeviceBase* device) : RenderPipelineBase(device) {
28             ON_CALL(*this, DestroyImpl).WillByDefault([this]() {
29                 this->RenderPipelineBase::DestroyImpl();
30             });
31         }
32         ~RenderPipelineMock() override = default;
33 
34         MOCK_METHOD(MaybeError, Initialize, (), (override));
35         MOCK_METHOD(size_t, ComputeContentHash, (), (override));
36         MOCK_METHOD(void, DestroyImpl, (), (override));
37     };
38 
39 }  // namespace dawn_native
40 
41 #endif  // TESTS_UNITTESTS_NATIVE_MOCKS_RENDERPIPELINE_MOCK_H_
42