39 lines
821 B
C++
39 lines
821 B
C++
#include <deque>
|
|
#include <string>
|
|
#include <fuc2/testing.hpp>
|
|
#include "model.hpp"
|
|
#include "shader.hpp"
|
|
|
|
using namespace fuc2;
|
|
|
|
namespace model_tests {
|
|
void test_load_textures() {
|
|
Shader shader{"shaders/14-vert.glsl", "shaders/14-frag.glsl"};
|
|
|
|
Model popcorn{"assets", "popcorn_model_a.glb"};
|
|
popcorn.draw(shader);
|
|
|
|
Model crate_glb{"assets", "crate.glb"};
|
|
crate_glb.draw(shader);
|
|
|
|
Model crate_obj{"assets", "crate.obj"};
|
|
crate_obj.draw(shader);
|
|
}
|
|
|
|
void test_failures() {
|
|
auto runner = [&]() {
|
|
Model bad_obj{"assets", "does_not_exist.obj"};
|
|
};
|
|
|
|
BLOWS_UP(runner, "should fail on missing file.");
|
|
}
|
|
|
|
fuc2::Set TESTS{
|
|
.name="models",
|
|
.options={ .fail_fast=false },
|
|
.tests={
|
|
TEST(test_load_textures),
|
|
TEST(test_failures),
|
|
}
|
|
};
|
|
}
|