This repository has been archived on 2024-03-07. You can view files and clone it, but cannot push or open issues/pull-requests.
pix-draw-studio/tests/KeyMod.cpp

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");
}
}