summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDan Goodliffe <dan@randomdan.homeip.net>2024-01-27 21:47:41 +0000
committerDan Goodliffe <dan@randomdan.homeip.net>2024-01-27 21:47:41 +0000
commite0ac130808d9bed5443115ee91e9cccda713ae3c (patch)
treedad2b2cbe2bc8bf5560f4859880549472f808671 /test
parentRemove the static texture cache (diff)
parentRender text in N draw calls (diff)
downloadilt-e0ac130808d9bed5443115ee91e9cccda713ae3c.tar.bz2
ilt-e0ac130808d9bed5443115ee91e9cccda713ae3c.tar.xz
ilt-e0ac130808d9bed5443115ee91e9cccda713ae3c.zip
Merge branch 'text2'
Diffstat (limited to 'test')
-rw-r--r--test/Jamfile.jam2
-rw-r--r--test/test-glContainer.cpp9
-rw-r--r--test/test-text.cpp19
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)