diff --git a/tests/test_menu.cpp b/tests/test_menu.cpp index 0474b742..28b4485d 100644 --- a/tests/test_menu.cpp +++ b/tests/test_menu.cpp @@ -29,4 +29,30 @@ BOOST_AUTO_TEST_CASE(menu_test_click) BOOST_CHECK( clickered ); } +BOOST_AUTO_TEST_CASE(menu_test_click_offset) +{ + bool clickered = false; + sf::Font f; + Menu test(f); + test.offset = sf::Vector2f(200.f, 200.f); + test.addEntry(Menu::lambda("Test", [&]{ clickered = true; })); + + BOOST_CHECK(! clickered ); + + // Click underneath the menu item. + test.click(201.f, -1.f); + + BOOST_CHECK(! clickered ); + + float h = test.entries.at(0)->getHeight(); + + test.click(201.f, 200.f + h + 1.f); + + BOOST_CHECK(! clickered ); + + test.click(201.f, 200.f + h / 2.f); + + BOOST_CHECK( clickered ); +} + BOOST_AUTO_TEST_SUITE_END()