mirror of
https://github.com/ApfelTeeSaft/vb01.git
synced 2026-08-26 19:33:45 +00:00
shader test
This commit is contained in:
+1
-1
@@ -26,7 +26,7 @@ target_link_libraries(vb01 glad)
|
|||||||
target_link_libraries(vb01 assimp)
|
target_link_libraries(vb01 assimp)
|
||||||
target_link_libraries(vb01 freetype)
|
target_link_libraries(vb01 freetype)
|
||||||
|
|
||||||
set(renderTest nodeTest.cpp cameraTest.cpp)
|
set(renderTest nodeTest.cpp cameraTest.cpp shaderTest.cpp)
|
||||||
set(armatureTest boneTest.cpp)
|
set(armatureTest boneTest.cpp)
|
||||||
set(modelTest vbModelReaderTest.cpp)
|
set(modelTest vbModelReaderTest.cpp)
|
||||||
set(animationTest animationChannelTest.cpp)
|
set(animationTest animationChannelTest.cpp)
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
#include "boneTest.h"
|
#include "boneTest.h"
|
||||||
#include "vbModelReaderTest.h"
|
#include "vbModelReaderTest.h"
|
||||||
#include "animationChannelTest.h"
|
#include "animationChannelTest.h"
|
||||||
|
#include "shaderTest.h"
|
||||||
|
|
||||||
using namespace CppUnit;
|
using namespace CppUnit;
|
||||||
using namespace vb01;
|
using namespace vb01;
|
||||||
@@ -19,6 +20,7 @@ int main(){
|
|||||||
runner.addTest(BoneTest::suite());
|
runner.addTest(BoneTest::suite());
|
||||||
runner.addTest(VbModelReaderTest::suite());
|
runner.addTest(VbModelReaderTest::suite());
|
||||||
runner.addTest(AnimationChannelTest::suite());
|
runner.addTest(AnimationChannelTest::suite());
|
||||||
|
runner.addTest(ShaderTest::suite());
|
||||||
runner.run();
|
runner.run();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,6 +12,7 @@ namespace vb01{
|
|||||||
enum ErrorType{VERTEX_ERROR, GEOMETRY_ERROR, FRAGMENT_ERROR, PROGRAM_ERROR};
|
enum ErrorType{VERTEX_ERROR, GEOMETRY_ERROR, FRAGMENT_ERROR, PROGRAM_ERROR};
|
||||||
enum ShaderType{VERTEX_SHADER, FRAGMENT_SHADER, GEOMETRY_SHADER};
|
enum ShaderType{VERTEX_SHADER, FRAGMENT_SHADER, GEOMETRY_SHADER};
|
||||||
|
|
||||||
|
Shader(){}
|
||||||
Shader(std::string, std::string, std::string = "");
|
Shader(std::string, std::string, std::string = "");
|
||||||
~Shader();
|
~Shader();
|
||||||
void setNumLights(int);
|
void setNumLights(int);
|
||||||
@@ -33,6 +34,8 @@ namespace vb01{
|
|||||||
unsigned int id;
|
unsigned int id;
|
||||||
bool geometry = false;
|
bool geometry = false;
|
||||||
std::string vString, fString, gString;
|
std::string vString, fString, gString;
|
||||||
|
|
||||||
|
friend class ShaderTest;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
#include "shaderTest.h"
|
||||||
|
#include "shader.h"
|
||||||
|
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
using namespace std;
|
||||||
|
|
||||||
|
namespace vb01{
|
||||||
|
void ShaderTest::setUp(){
|
||||||
|
shader = new Shader();
|
||||||
|
shader->vString = "var x = 1\nvar y = 1\nvar z = 1";
|
||||||
|
}
|
||||||
|
|
||||||
|
void ShaderTest::tearDown(){
|
||||||
|
}
|
||||||
|
|
||||||
|
void ShaderTest::testReplaceLine(){
|
||||||
|
string replacement = "var y = 10";
|
||||||
|
shader->replaceLine(Shader::ShaderType::VERTEX_SHADER, 1, replacement);
|
||||||
|
size_t spot = shader->vString.find(replacement);
|
||||||
|
CPPUNIT_ASSERT(spot != string::npos);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
#ifndef SHADER_TEST_H
|
||||||
|
#define SHADER_TEST_H
|
||||||
|
|
||||||
|
#include <cppunit/TestFixture.h>
|
||||||
|
#include <cppunit/extensions/HelperMacros.h>
|
||||||
|
|
||||||
|
namespace vb01{
|
||||||
|
class Shader;
|
||||||
|
|
||||||
|
class ShaderTest : public CppUnit::TestFixture{
|
||||||
|
CPPUNIT_TEST_SUITE(ShaderTest);
|
||||||
|
CPPUNIT_TEST(testReplaceLine);
|
||||||
|
CPPUNIT_TEST_SUITE_END();
|
||||||
|
|
||||||
|
public:
|
||||||
|
ShaderTest(){}
|
||||||
|
~ShaderTest(){}
|
||||||
|
void setUp();
|
||||||
|
void tearDown();
|
||||||
|
private:
|
||||||
|
Shader *shader = nullptr;
|
||||||
|
|
||||||
|
void testReplaceLine();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
Reference in New Issue
Block a user