43 lines
845 B
C++
43 lines
845 B
C++
#include <catch2/catch.hpp>
|
|
#include "../src/keys/KeyMod.hpp"
|
|
|
|
class KeyModTest
|
|
{
|
|
public:
|
|
explicit KeyModTest() {}
|
|
virtual ~KeyModTest() {}
|
|
|
|
protected:
|
|
};
|
|
|
|
TEST_CASE_METHOD(KeyModTest, "KeyMod_to_string")
|
|
{
|
|
SECTION("simple")
|
|
{
|
|
pix::KeyMod km {"a"};
|
|
REQUIRE(km.string() == "a");
|
|
}
|
|
|
|
SECTION("one modifier")
|
|
{
|
|
pix::KeyMod km {"a", PIX_MOD(pix::PIX_CTRL)};
|
|
REQUIRE(km.string() == "C-a");
|
|
}
|
|
|
|
SECTION("two modifiers")
|
|
{
|
|
pix::KeyMod km {"z",
|
|
PIX_MOD(pix::PIX_CTRL)
|
|
| PIX_MOD(pix::PIX_ALT)};
|
|
REQUIRE(km.string() == "C-A-z");
|
|
}
|
|
|
|
SECTION("two modifiers reversed")
|
|
{
|
|
pix::KeyMod km {"k",
|
|
PIX_MOD(pix::PIX_SHIFT)
|
|
| PIX_MOD(pix::PIX_CTRL)};
|
|
REQUIRE(km.string() == "C-S-k");
|
|
}
|
|
}
|