Upgraded test harness
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / dali-toolkit-test-utils / test-gl-abstraction.cpp
1 /*
2  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 #include "test-gl-abstraction.h"
19
20 namespace Dali
21 {
22
23 TestGlAbstraction::TestGlAbstraction()
24 {
25   Initialize();
26 }
27
28 TestGlAbstraction::~TestGlAbstraction() {}
29
30 void TestGlAbstraction::Initialize()
31 {
32   mCurrentProgram = 0;
33   mCompileStatus = GL_TRUE;
34   mLinkStatus = GL_TRUE;
35
36   mGetAttribLocationResult = 0;
37   mGetErrorResult = 0;
38   mGetStringResult = NULL;
39   mIsBufferResult = 0;
40   mIsEnabledResult = 0;
41   mIsFramebufferResult = 0;
42   mIsProgramResult = 0;
43   mIsRenderbufferResult = 0;
44   mIsShaderResult = 0;
45   mIsTextureResult = 0;
46   mActiveTextureUnit = 0;
47   mCheckFramebufferStatusResult = 0;
48   mFramebufferStatus = 0;
49   mFramebufferColorAttached = 0;
50   mFramebufferDepthAttached = 0;
51   mFramebufferStencilAttached = 0;
52   mNumBinaryFormats = 0;
53   mBinaryFormats = 0;
54   mProgramBinaryLength = 0;
55
56   mVertexAttribArrayChanged = false;
57   mGetProgramBinaryCalled = false;
58
59   mLastShaderCompiled = 0;
60   mLastClearBitMask = 0;
61   mClearCount = 0;
62
63   mLastBlendEquationRgb   = 0;
64   mLastBlendEquationAlpha = 0;
65   mLastBlendFuncSrcRgb    = 0;
66   mLastBlendFuncDstRgb    = 0;
67   mLastBlendFuncSrcAlpha  = 0;
68   mLastBlendFuncDstAlpha  = 0;
69   mLastAutoTextureIdUsed = 0;
70   mLastShaderIdUsed = 0;
71   mLastProgramIdUsed = 0;
72   mLastUniformIdUsed = 0;
73
74   mUniforms.clear();
75   mProgramUniforms1i.clear();
76   mProgramUniforms1f.clear();
77   mProgramUniforms2f.clear();
78   mProgramUniforms3f.clear();
79   mProgramUniforms4f.clear();
80
81   for( unsigned int i=0; i<MAX_ATTRIBUTE_CACHE_SIZE; ++i )
82   {
83     mVertexAttribArrayState[i] = false;
84   }
85 }
86
87 void TestGlAbstraction::PreRender()
88 {
89 }
90
91 void TestGlAbstraction::PostRender()
92 {
93 }
94
95 } // Namespace dali
96
97 bool BlendEnabled(const Dali::TraceCallStack& callStack)
98 {
99   std::stringstream out;
100   out << GL_BLEND;
101   bool blendEnabled = callStack.FindMethodAndParams("Enable", out.str());
102   return blendEnabled;
103 }
104
105 bool BlendDisabled(const Dali::TraceCallStack& callStack)
106 {
107   std::stringstream out;
108   out << GL_BLEND;
109   bool blendEnabled = callStack.FindMethodAndParams("Disable", out.str());
110   return blendEnabled;
111 }