FTXUI/src/ftxui/dom/gauge_test.cpp
2022-04-28 10:43:31 +02:00

105 lines
2.1 KiB
C++

#include <gtest/gtest-message.h> // for Message
#include <gtest/gtest-test-part.h> // for SuiteApiResolver, TestFactoryImpl, TestPartResult
#include <memory> // for allocator
#include "ftxui/dom/elements.hpp" // for gauge, gaugeUp
#include "ftxui/dom/node.hpp" // for Render
#include "ftxui/screen/screen.hpp" // for Screen
#include "gtest/gtest_pred_impl.h" // for Test, EXPECT_EQ, TEST
namespace ftxui {
TEST(GaugeTest, ZeroHorizontal) {
auto root = gauge(0);
Screen screen(11, 1);
Render(screen, root);
EXPECT_EQ(" ", screen.ToString());
}
TEST(GaugeTest, HalfHorizontal) {
auto root = gauge(0.5);
Screen screen(11, 1);
Render(screen, root);
#if defined(FTXUI_MICROSOFT_TERMINAL_FALLBACK)
EXPECT_EQ("█████▌ ", screen.ToString());
#else
EXPECT_EQ("█████▍ ", screen.ToString());
#endif
}
TEST(GaugeTest, OneHorizontal) {
auto root = gauge(1.0);
Screen screen(11, 1);
Render(screen, root);
EXPECT_EQ("███████████", screen.ToString());
}
TEST(GaugeTest, ZeroVertical) {
auto root = gaugeUp(0);
Screen screen(1, 11);
Render(screen, root);
EXPECT_EQ(
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" ",
screen.ToString());
}
TEST(GaugeTest, HalfVertical) {
auto root = gaugeUp(0.5);
Screen screen(1, 11);
Render(screen, root);
EXPECT_EQ(
" \r\n"
" \r\n"
" \r\n"
" \r\n"
" \r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"",
screen.ToString());
}
TEST(GaugeTest, OneVertical) {
auto root = gaugeUp(1.0);
Screen screen(1, 11);
Render(screen, root);
EXPECT_EQ(
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"\r\n"
"",
screen.ToString());
}
} // namespace ftxui
// Copyright 2020 Arthur Sonzogni. All rights reserved.
// Use of this source code is governed by the MIT license that can be found in
// the LICENSE file.