MCPcopy Create free account
hub / github.com/ColinPitrat/caprice32 / TEST_F

Function TEST_F

test/InputMapper.cpp:17–48  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

15};
16
17TEST_F(InputMapperTest, StringToEventsSimpleString)
18{
19 CPC.kbd_layout ="keymap_us.map";
20 CPC.keyboard = 0;
21 CPC.InputMapper->init();
22
23 std::string input = "cat";
24
25 auto tmp = CPC.InputMapper->StringToEvents(input);
26 std::vector<SDL_Event> result(tmp.begin(), tmp.end());
27
28 ASSERT_EQ(6, result.size());
29
30 // Result must be an alternance of key down / key up
31 for(int i = 0; i < 3; ++i) {
32 ASSERT_EQ(SDL_KEYDOWN, result[2*i].key.type);
33 ASSERT_EQ(SDL_PRESSED, result[2*i].key.state);
34 ASSERT_EQ(SDL_KEYUP, result[2*i+1].key.type);
35 ASSERT_EQ(SDL_RELEASED, result[2*i+1].key.state);
36 }
37 // Only keys without modifier
38 for(int i = 0; i < 6; ++i) {
39 ASSERT_EQ(KMOD_NONE, result[i].key.keysym.mod);
40 }
41 // Keys correspond to the input string
42 ASSERT_EQ(SDLK_c, result[0].key.keysym.sym);
43 ASSERT_EQ(SDLK_c, result[1].key.keysym.sym);
44 ASSERT_EQ(SDLK_a, result[2].key.keysym.sym);
45 ASSERT_EQ(SDLK_a, result[3].key.keysym.sym);
46 ASSERT_EQ(SDLK_t, result[4].key.keysym.sym);
47 ASSERT_EQ(SDLK_t, result[5].key.keysym.sym);
48}
49
50TEST_F(InputMapperTest, StringToEventsWithEscapedChar)
51{

Callers

nothing calls this directly

Calls 3

initMethod · 0.80
StringToEventsMethod · 0.80
CPCkeyFromKeysymMethod · 0.80

Tested by

no test coverage detected