1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 // This file contains the mock GLES2Decoder class.
7 #ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_MOCK_H_
8 #define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_MOCK_H_
12 #include "gpu/command_buffer/common/mailbox.h"
13 #include "gpu/command_buffer/service/gles2_cmd_decoder.h"
14 #include "base/callback_forward.h"
15 #include "testing/gmock/include/gmock/gmock.h"
16 #include "ui/gfx/size.h"
31 class MockGLES2Decoder
: public GLES2Decoder
{
34 virtual ~MockGLES2Decoder();
36 MOCK_METHOD6(Initialize
,
37 bool(const scoped_refptr
<gfx::GLSurface
>& surface
,
38 const scoped_refptr
<gfx::GLContext
>& context
,
40 const gfx::Size
& size
,
41 const DisallowedFeatures
& disallowed_features
,
42 const std::vector
<int32
>& attribs
));
43 MOCK_METHOD1(Destroy
, void(bool have_context
));
44 MOCK_METHOD1(SetSurface
, void(const scoped_refptr
<gfx::GLSurface
>& surface
));
45 MOCK_METHOD1(ProduceFrontBuffer
, void(const Mailbox
& mailbox
));
46 MOCK_METHOD1(ResizeOffscreenFrameBuffer
, bool(const gfx::Size
& size
));
47 MOCK_METHOD0(MakeCurrent
, bool());
48 MOCK_METHOD1(GetServiceIdForTesting
, uint32(uint32 client_id
));
49 MOCK_METHOD0(GetGLES2Util
, GLES2Util
*());
50 MOCK_METHOD0(GetGLSurface
, gfx::GLSurface
*());
51 MOCK_METHOD0(GetGLContext
, gfx::GLContext
*());
52 MOCK_METHOD0(GetContextGroup
, ContextGroup
*());
53 MOCK_METHOD0(GetContextState
, const ContextState
*());
54 MOCK_METHOD0(GetCapabilities
, Capabilities());
55 MOCK_METHOD0(ProcessPendingQueries
, bool());
56 MOCK_METHOD0(HasMoreIdleWork
, bool());
57 MOCK_METHOD0(PerformIdleWork
, void());
58 MOCK_CONST_METHOD1(RestoreState
, void(const ContextState
* prev_state
));
59 MOCK_CONST_METHOD0(RestoreActiveTexture
, void());
61 RestoreAllTextureUnitBindings
, void(const ContextState
* state
));
63 RestoreActiveTextureUnitBinding
, void(unsigned int target
));
64 MOCK_CONST_METHOD0(RestoreBufferBindings
, void());
65 MOCK_CONST_METHOD0(RestoreFramebufferBindings
, void());
66 MOCK_CONST_METHOD0(RestoreGlobalState
, void());
67 MOCK_CONST_METHOD0(RestoreProgramBindings
, void());
68 MOCK_CONST_METHOD0(RestoreRenderbufferBindings
, void());
69 MOCK_CONST_METHOD1(RestoreTextureState
, void(unsigned service_id
));
70 MOCK_CONST_METHOD1(RestoreTextureUnitBindings
, void(unsigned unit
));
71 MOCK_CONST_METHOD0(ClearAllAttributes
, void());
72 MOCK_CONST_METHOD0(RestoreAllAttributes
, void());
73 MOCK_METHOD0(GetQueryManager
, gpu::gles2::QueryManager
*());
74 MOCK_METHOD0(GetVertexArrayManager
, gpu::gles2::VertexArrayManager
*());
76 SetResizeCallback
, void(const base::Callback
<void(gfx::Size
, float)>&));
77 MOCK_METHOD0(GetAsyncPixelTransferDelegate
,
78 AsyncPixelTransferDelegate
*());
79 MOCK_METHOD0(GetAsyncPixelTransferManager
,
80 AsyncPixelTransferManager
*());
81 MOCK_METHOD0(ResetAsyncPixelTransferManagerForTest
, void());
82 MOCK_METHOD1(SetAsyncPixelTransferManagerForTest
,
83 void(AsyncPixelTransferManager
*));
84 MOCK_METHOD1(SetIgnoreCachedStateForTest
, void(bool ignore
));
85 MOCK_METHOD3(DoCommand
, error::Error(unsigned int command
,
86 unsigned int arg_count
,
87 const void* cmd_data
));
88 MOCK_METHOD2(GetServiceTextureId
, bool(uint32 client_texture_id
,
89 uint32
* service_texture_id
));
90 MOCK_METHOD0(GetContextLostReason
, error::ContextLostReason());
91 MOCK_CONST_METHOD1(GetCommandName
, const char*(unsigned int command_id
));
92 MOCK_METHOD10(ClearLevel
, bool(
97 unsigned internal_format
,
102 bool is_texture_immutable
));
103 MOCK_METHOD0(GetErrorState
, ErrorState
*());
105 MOCK_METHOD0(GetLogger
, Logger
*());
106 MOCK_METHOD1(SetShaderCacheCallback
,
107 void(const ShaderCacheCallback
& callback
));
108 MOCK_METHOD1(SetWaitSyncPointCallback
,
109 void(const WaitSyncPointCallback
& callback
));
110 MOCK_METHOD1(WaitForReadPixels
,
111 void(base::Closure callback
));
112 MOCK_METHOD0(GetTextureUploadCount
, uint32());
113 MOCK_METHOD0(GetTotalTextureUploadTime
, base::TimeDelta());
114 MOCK_METHOD0(GetTotalProcessingCommandsTime
, base::TimeDelta());
115 MOCK_METHOD1(AddProcessingCommandsTime
, void(base::TimeDelta
));
116 MOCK_METHOD0(WasContextLost
, bool());
117 MOCK_METHOD0(WasContextLostByRobustnessExtension
, bool());
118 MOCK_METHOD1(LoseContext
, void(uint32 reset_status
));
120 DISALLOW_COPY_AND_ASSIGN(MockGLES2Decoder
);
126 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_MOCK_H_