Now have more test for the base functionality but need to push render tests and find a way to test the GUI. I've also brought in sol2 for lua integration but not sure what to do with it.
This commit is contained in:
parent
d0d62836e3
commit
e86d474c7c
14 changed files with 188 additions and 8 deletions
38
tests/render.cpp
Normal file
38
tests/render.cpp
Normal file
|
@ -0,0 +1,38 @@
|
|||
#include <catch2/catch_test_macros.hpp>
|
||||
#include <fmt/core.h>
|
||||
#include "render.hpp"
|
||||
#include "panel.hpp"
|
||||
|
||||
using namespace ftxui;
|
||||
using namespace fmt;
|
||||
using std::string;
|
||||
|
||||
void run_renderer(SFMLRender &renderer, Panel &panel) {
|
||||
panel.render();
|
||||
renderer.display();
|
||||
REQUIRE(renderer.is_open() == true);
|
||||
renderer.clear();
|
||||
renderer.draw(panel);
|
||||
}
|
||||
|
||||
TEST_CASE("can render a text or grid panel", "[render]") {
|
||||
SFMLRender renderer;
|
||||
|
||||
Panel panel(0, 0, 20, 5);
|
||||
Panel grid(200, 200, 20, 5, true);
|
||||
|
||||
auto text_box = Renderer([]{
|
||||
return hbox({
|
||||
hflow(
|
||||
vbox(text("I AM TEXT"))
|
||||
)});
|
||||
});
|
||||
|
||||
panel.set_renderer(text_box);
|
||||
grid.set_renderer(text_box);
|
||||
|
||||
run_renderer(renderer, panel);
|
||||
run_renderer(renderer, grid);
|
||||
|
||||
renderer.close();
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue