36 lines
867 B
C++
36 lines
867 B
C++
#include <fmt/core.h>
|
|
#include <string>
|
|
#include "guecs/sfml/shaders.hpp"
|
|
#include <fuc2/testing.hpp>
|
|
|
|
using namespace fuc2;
|
|
using namespace fmt;
|
|
|
|
namespace shader_tests {
|
|
void test_shader_loading() {
|
|
shaders::init();
|
|
int version = shaders::version();
|
|
|
|
std::shared_ptr<sf::Shader> ui_shader = shaders::get("ui_shader");
|
|
auto other_test = shaders::get("ui_shader");
|
|
|
|
CHECK(ui_shader != nullptr);
|
|
CHECK(ui_shader == other_test);
|
|
CHECK(shaders::updated(version) == false);
|
|
|
|
int new_version = shaders::reload();
|
|
CHECK(version != shaders::version());
|
|
CHECK(version != new_version);
|
|
CHECK(shaders::version() == new_version);
|
|
CHECK(shaders::updated(version) == true);
|
|
version = new_version;
|
|
|
|
}
|
|
|
|
fuc2::Set TESTS{
|
|
.name="shader tests",
|
|
.tests={
|
|
{"test_shader_loading", test_shader_loading},
|
|
}
|
|
};
|
|
}
|