#include #include "automap.h" using namespace devilution; TEST(Automap, InitAutomap) { InitAutomapOnce(); EXPECT_EQ(AutomapActive, false); EXPECT_EQ(AutoMapScale, 50); EXPECT_EQ(AmLine64, 32); EXPECT_EQ(AmLine32, 16); EXPECT_EQ(AmLine16, 8); EXPECT_EQ(AmLine8, 4); EXPECT_EQ(AmLine4, 2); } TEST(Automap, StartAutomap) { StartAutomap(); EXPECT_EQ(AutomapOffset.deltaX, 0); EXPECT_EQ(AutomapOffset.deltaY, 0); EXPECT_EQ(AutomapActive, true); } TEST(Automap, AutomapUp) { AutomapOffset.deltaX = 1; AutomapOffset.deltaY = 1; AutomapUp(); EXPECT_EQ(AutomapOffset.deltaX, 0); EXPECT_EQ(AutomapOffset.deltaY, 0); } TEST(Automap, AutomapDown) { AutomapOffset.deltaX = 1; AutomapOffset.deltaY = 1; AutomapDown(); EXPECT_EQ(AutomapOffset.deltaX, 2); EXPECT_EQ(AutomapOffset.deltaY, 2); } TEST(Automap, AutomapLeft) { AutomapOffset.deltaX = 1; AutomapOffset.deltaY = 1; AutomapLeft(); EXPECT_EQ(AutomapOffset.deltaX, 0); EXPECT_EQ(AutomapOffset.deltaY, 2); } TEST(Automap, AutomapRight) { AutomapOffset.deltaX = 1; AutomapOffset.deltaY = 1; AutomapRight(); EXPECT_EQ(AutomapOffset.deltaX, 2); EXPECT_EQ(AutomapOffset.deltaY, 0); } TEST(Automap, AutomapZoomIn) { AutoMapScale = 50; AutomapZoomIn(); EXPECT_EQ(AutoMapScale, 55); EXPECT_EQ(AmLine64, 35); EXPECT_EQ(AmLine32, 17); EXPECT_EQ(AmLine16, 8); EXPECT_EQ(AmLine8, 4); EXPECT_EQ(AmLine4, 2); } TEST(Automap, AutomapZoomIn_Max) { AutoMapScale = 195; AutomapZoomIn(); AutomapZoomIn(); EXPECT_EQ(AutoMapScale, 200); EXPECT_EQ(AmLine64, 128); EXPECT_EQ(AmLine32, 64); EXPECT_EQ(AmLine16, 32); EXPECT_EQ(AmLine8, 16); EXPECT_EQ(AmLine4, 8); } TEST(Automap, AutomapZoomOut) { AutoMapScale = 200; AutomapZoomOut(); EXPECT_EQ(AutoMapScale, 195); EXPECT_EQ(AmLine64, 124); EXPECT_EQ(AmLine32, 62); EXPECT_EQ(AmLine16, 31); EXPECT_EQ(AmLine8, 15); EXPECT_EQ(AmLine4, 7); } TEST(Automap, AutomapZoomOut_Min) { AutoMapScale = 55; AutomapZoomOut(); AutomapZoomOut(); EXPECT_EQ(AutoMapScale, 50); EXPECT_EQ(AmLine64, 32); EXPECT_EQ(AmLine32, 16); EXPECT_EQ(AmLine16, 8); EXPECT_EQ(AmLine8, 4); EXPECT_EQ(AmLine4, 2); } TEST(Automap, AutomapZoomReset) { AutoMapScale = 50; AutomapOffset.deltaX = 1; AutomapOffset.deltaY = 1; AutomapZoomReset(); EXPECT_EQ(AutomapOffset.deltaX, 0); EXPECT_EQ(AutomapOffset.deltaY, 0); EXPECT_EQ(AutoMapScale, 50); EXPECT_EQ(AmLine64, 32); EXPECT_EQ(AmLine32, 16); EXPECT_EQ(AmLine16, 8); EXPECT_EQ(AmLine8, 4); EXPECT_EQ(AmLine4, 2); }