diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/Jamfile.jam | 2 | ||||
-rw-r--r-- | test/test-glContainer.cpp | 9 | ||||
-rw-r--r-- | test/test-text.cpp | 19 |
3 files changed, 27 insertions, 3 deletions
diff --git a/test/Jamfile.jam b/test/Jamfile.jam index c109051..733ef05 100644 --- a/test/Jamfile.jam +++ b/test/Jamfile.jam @@ -49,7 +49,7 @@ run test-lib.cpp ; run test-geoData.cpp : -- : fixtures/height/SD19.asc : <library>test ; run test-network.cpp : : : <library>test ; run test-persistence.cpp : -- : [ sequence.insertion-sort [ glob-tree $(fixtures)/json : *.json ] ] : <library>test ; -run test-text.cpp : : : <library>test ; +run test-text.cpp : -- : test-glContainer : <library>test ; run test-enumDetails.cpp ; run test-render.cpp : -- : test-assetFactory : <library>test ; run test-glContextBhvr.cpp ; diff --git a/test/test-glContainer.cpp b/test/test-glContainer.cpp index 0597470..ccf3b90 100644 --- a/test/test-glContainer.cpp +++ b/test/test-glContainer.cpp @@ -305,6 +305,15 @@ BOOST_AUTO_TEST_CASE(iter_compare) BOOST_AUTO_TEST_SUITE_END(); +BOOST_AUTO_TEST_CASE(create_copy_source, *boost::unit_test::timeout(1)) +{ + const std::vector src {4, 6, 2, 4, 6, 0}; + glContainer dst {src}; + static_assert(std::is_same_v<decltype(src)::value_type, decltype(dst)::value_type>); + dst.unmap(); + BOOST_CHECK_EQUAL_COLLECTIONS(src.begin(), src.end(), dst.begin(), dst.end()); +} + struct C { int x; float y; diff --git a/test/test-text.cpp b/test/test-text.cpp index 166a6fa..f652670 100644 --- a/test/test-text.cpp +++ b/test/test-text.cpp @@ -6,10 +6,12 @@ #include <stream_support.h> #include "testMainWindow.h" +#include "testRenderOutput.h" #include "ui/applicationBase.h" +#include "ui/text.h" #include <array> +#include <gfx/models/texture.h> #include <glm/glm.hpp> -#include <span> #include <ui/font.h> #include <unicode.h> #include <vector> @@ -86,7 +88,7 @@ BOOST_DATA_TEST_CASE(initialize_chardata_A, static_assert(glm::vec2 {862, 0} / glm::vec2 {2048, 64} == glm::vec2 {0.4208984375, 0}); static_assert(glm::vec2 {866, 35} / glm::vec2 {2048, 64} == glm::vec2 {0.4228515625, 0.546875}); -BOOST_AUTO_TEST_CASE(render_text) +BOOST_AUTO_TEST_CASE(render_font) { constexpr std::string_view text {"I Like Trains"}; const auto spaces = static_cast<std::size_t>(std::count_if(text.begin(), text.end(), isspace)); @@ -112,6 +114,19 @@ BOOST_AUTO_TEST_CASE(render_text) } } +BOOST_AUTO_TEST_CASE(render_text) +{ + TestRenderOutput output; + glBindFramebuffer(GL_FRAMEBUFFER, output.output); + glViewport(0, 0, 640, 480); + glEnable(GL_BLEND); + glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA); + Text t {"I Like Trains", *this, {{10, 10}, {200, 40}}, {1, 1, 1}}; + UIShader s {640, 480}; + t.render(s, {}); + Texture::save(output.outImage, "/tmp/text.tga"); +} + BOOST_AUTO_TEST_SUITE_END() BOOST_AUTO_TEST_CASE(stream_vec) |