diff --git a/CMakeLists.txt b/CMakeLists.txt index 74e3bf4d2..b25537d0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -310,10 +310,10 @@ endif() if(RUN_TESTS) list(APPEND devilutionx_SRCS - SourceT/appfat.cpp - SourceT/automap.cpp - SourceT/control.cpp - SourceT/cursor.cpp) + SourceT/appfat_test.cpp + SourceT/automap_test.cpp + SourceT/control_test.cpp + SourceT/cursor_test.cpp) endif() add_executable(${BIN_TARGET} WIN32 MACOSX_BUNDLE ${devilutionx_SRCS}) diff --git a/SourceT/appfat.cpp b/SourceT/appfat_test.cpp similarity index 58% rename from SourceT/appfat.cpp rename to SourceT/appfat_test.cpp index 5d505983b..1f3e59c76 100644 --- a/SourceT/appfat.cpp +++ b/SourceT/appfat_test.cpp @@ -2,21 +2,21 @@ #include "devilution.h" TEST(Appfat, app_fatal) { - ASSERT_EXIT(dvl::app_fatal("test"), ::testing::ExitedWithCode(1), "test"); + EXPECT_EXIT(dvl::app_fatal("test"), ::testing::ExitedWithCode(1), "test"); } TEST(Appfat, ErrDlg) { - ASSERT_EXIT(dvl::ErrDlg("Title", "Unknown error", "appfat.cpp", 7), ::testing::ExitedWithCode(1), "Unknown error\n\nThe error occurred at: appfat.cpp line 7"); + EXPECT_EXIT(dvl::ErrDlg("Title", "Unknown error", "appfat.cpp", 7), ::testing::ExitedWithCode(1), "Unknown error\n\nThe error occurred at: appfat.cpp line 7"); } TEST(Appfat, FileErrDlg) { - ASSERT_EXIT(dvl::FileErrDlg("devilution/image.cl2"), ::testing::ExitedWithCode(1), "devilution/image.cl2"); + EXPECT_EXIT(dvl::FileErrDlg("devilution/image.cl2"), ::testing::ExitedWithCode(1), "devilution/image.cl2"); } TEST(Appfat, InsertCDDlg) { - ASSERT_EXIT(dvl::InsertCDDlg("devilution/image.cl2"), ::testing::ExitedWithCode(1), "devilution/image.cl2"); + EXPECT_EXIT(dvl::InsertCDDlg("devilution/image.cl2"), ::testing::ExitedWithCode(1), "devilution/image.cl2"); } TEST(Appfat, DirErrorDlg) { - ASSERT_EXIT(dvl::DirErrorDlg("/"), ::testing::ExitedWithCode(1), "Unable to write to location:\n/"); + EXPECT_EXIT(dvl::DirErrorDlg("/"), ::testing::ExitedWithCode(1), "Unable to write to location:\n/"); } diff --git a/SourceT/automap.cpp b/SourceT/automap.cpp deleted file mode 100644 index 060a513ba..000000000 --- a/SourceT/automap.cpp +++ /dev/null @@ -1,113 +0,0 @@ -#include -#include "devilution.h" - -TEST(Automap, InitAutomap) { - dvl::InitAutomapOnce(); - ASSERT_EQ(dvl::automapflag, false); - ASSERT_EQ(dvl::AutoMapScale, 50); - ASSERT_EQ(dvl::AutoMapPosBits, 32); - ASSERT_EQ(dvl::AutoMapXPos, 16); - ASSERT_EQ(dvl::AutoMapYPos, 8); - ASSERT_EQ(dvl::AMPlayerX, 4); - ASSERT_EQ(dvl::AMPlayerY, 2); -} - -TEST(Automap, StartAutomap) { - dvl::StartAutomap(); - ASSERT_EQ(dvl::AutoMapXOfs, 0); - ASSERT_EQ(dvl::AutoMapYOfs, 0); - ASSERT_EQ(dvl::automapflag, true); -} - -TEST(Automap, AutomapUp) { - dvl::AutoMapXOfs = 1; - dvl::AutoMapYOfs = 1; - dvl::AutomapUp(); - ASSERT_EQ(dvl::AutoMapXOfs, 0); - ASSERT_EQ(dvl::AutoMapYOfs, 0); -} - -TEST(Automap, AutomapDown) { - dvl::AutoMapXOfs = 1; - dvl::AutoMapYOfs = 1; - dvl::AutomapDown(); - ASSERT_EQ(dvl::AutoMapXOfs, 2); - ASSERT_EQ(dvl::AutoMapYOfs, 2); -} - -TEST(Automap, AutomapLeft) { - dvl::AutoMapXOfs = 1; - dvl::AutoMapYOfs = 1; - dvl::AutomapLeft(); - ASSERT_EQ(dvl::AutoMapXOfs, 0); - ASSERT_EQ(dvl::AutoMapYOfs, 2); -} - -TEST(Automap, AutomapRight) { - dvl::AutoMapXOfs = 1; - dvl::AutoMapYOfs = 1; - dvl::AutomapRight(); - ASSERT_EQ(dvl::AutoMapXOfs, 2); - ASSERT_EQ(dvl::AutoMapYOfs, 0); -} - -TEST(Automap, AutomapZoomIn) { - dvl::AutoMapScale = 50; - dvl::AutomapZoomIn(); - ASSERT_EQ(dvl::AutoMapScale, 55); - ASSERT_EQ(dvl::AutoMapPosBits, 35); - ASSERT_EQ(dvl::AutoMapXPos, 17); - ASSERT_EQ(dvl::AutoMapYPos, 8); - ASSERT_EQ(dvl::AMPlayerX, 4); - ASSERT_EQ(dvl::AMPlayerY, 2); -} - -TEST(Automap, AutomapZoomIn_Max) { - dvl::AutoMapScale = 195; - dvl::AutomapZoomIn(); - dvl::AutomapZoomIn(); - ASSERT_EQ(dvl::AutoMapScale, 200); - ASSERT_EQ(dvl::AutoMapPosBits, 128); - ASSERT_EQ(dvl::AutoMapXPos, 64); - ASSERT_EQ(dvl::AutoMapYPos, 32); - ASSERT_EQ(dvl::AMPlayerX, 16); - ASSERT_EQ(dvl::AMPlayerY, 8); -} - -TEST(Automap, AutomapZoomOut) { - dvl::AutoMapScale = 200; - dvl::AutomapZoomOut(); - ASSERT_EQ(dvl::AutoMapScale, 195); - ASSERT_EQ(dvl::AutoMapPosBits, 124); - ASSERT_EQ(dvl::AutoMapXPos, 62); - ASSERT_EQ(dvl::AutoMapYPos, 31); - ASSERT_EQ(dvl::AMPlayerX, 15); - ASSERT_EQ(dvl::AMPlayerY, 7); -} - -TEST(Automap, AutomapZoomOut_Min) { - dvl::AutoMapScale = 55; - dvl::AutomapZoomOut(); - dvl::AutomapZoomOut(); - ASSERT_EQ(dvl::AutoMapScale, 50); - ASSERT_EQ(dvl::AutoMapPosBits, 32); - ASSERT_EQ(dvl::AutoMapXPos, 16); - ASSERT_EQ(dvl::AutoMapYPos, 8); - ASSERT_EQ(dvl::AMPlayerX, 4); - ASSERT_EQ(dvl::AMPlayerY, 2); -} - -TEST(Automap, AutomapZoomReset) { - dvl::AutoMapScale = 50; - dvl::AutoMapXOfs = 1; - dvl::AutoMapYOfs = 1; - dvl::AutomapZoomReset(); - ASSERT_EQ(dvl::AutoMapXOfs, 0); - ASSERT_EQ(dvl::AutoMapYOfs, 0); - ASSERT_EQ(dvl::AutoMapScale, 50); - ASSERT_EQ(dvl::AutoMapPosBits, 32); - ASSERT_EQ(dvl::AutoMapXPos, 16); - ASSERT_EQ(dvl::AutoMapYPos, 8); - ASSERT_EQ(dvl::AMPlayerX, 4); - ASSERT_EQ(dvl::AMPlayerY, 2); -} diff --git a/SourceT/automap_test.cpp b/SourceT/automap_test.cpp new file mode 100644 index 000000000..a855c7392 --- /dev/null +++ b/SourceT/automap_test.cpp @@ -0,0 +1,113 @@ +#include +#include "devilution.h" + +TEST(Automap, InitAutomap) { + dvl::InitAutomapOnce(); + EXPECT_EQ(dvl::automapflag, false); + EXPECT_EQ(dvl::AutoMapScale, 50); + EXPECT_EQ(dvl::AutoMapPosBits, 32); + EXPECT_EQ(dvl::AutoMapXPos, 16); + EXPECT_EQ(dvl::AutoMapYPos, 8); + EXPECT_EQ(dvl::AMPlayerX, 4); + EXPECT_EQ(dvl::AMPlayerY, 2); +} + +TEST(Automap, StartAutomap) { + dvl::StartAutomap(); + EXPECT_EQ(dvl::AutoMapXOfs, 0); + EXPECT_EQ(dvl::AutoMapYOfs, 0); + EXPECT_EQ(dvl::automapflag, true); +} + +TEST(Automap, AutomapUp) { + dvl::AutoMapXOfs = 1; + dvl::AutoMapYOfs = 1; + dvl::AutomapUp(); + EXPECT_EQ(dvl::AutoMapXOfs, 0); + EXPECT_EQ(dvl::AutoMapYOfs, 0); +} + +TEST(Automap, AutomapDown) { + dvl::AutoMapXOfs = 1; + dvl::AutoMapYOfs = 1; + dvl::AutomapDown(); + EXPECT_EQ(dvl::AutoMapXOfs, 2); + EXPECT_EQ(dvl::AutoMapYOfs, 2); +} + +TEST(Automap, AutomapLeft) { + dvl::AutoMapXOfs = 1; + dvl::AutoMapYOfs = 1; + dvl::AutomapLeft(); + EXPECT_EQ(dvl::AutoMapXOfs, 0); + EXPECT_EQ(dvl::AutoMapYOfs, 2); +} + +TEST(Automap, AutomapRight) { + dvl::AutoMapXOfs = 1; + dvl::AutoMapYOfs = 1; + dvl::AutomapRight(); + EXPECT_EQ(dvl::AutoMapXOfs, 2); + EXPECT_EQ(dvl::AutoMapYOfs, 0); +} + +TEST(Automap, AutomapZoomIn) { + dvl::AutoMapScale = 50; + dvl::AutomapZoomIn(); + EXPECT_EQ(dvl::AutoMapScale, 55); + EXPECT_EQ(dvl::AutoMapPosBits, 35); + EXPECT_EQ(dvl::AutoMapXPos, 17); + EXPECT_EQ(dvl::AutoMapYPos, 8); + EXPECT_EQ(dvl::AMPlayerX, 4); + EXPECT_EQ(dvl::AMPlayerY, 2); +} + +TEST(Automap, AutomapZoomIn_Max) { + dvl::AutoMapScale = 195; + dvl::AutomapZoomIn(); + dvl::AutomapZoomIn(); + EXPECT_EQ(dvl::AutoMapScale, 200); + EXPECT_EQ(dvl::AutoMapPosBits, 128); + EXPECT_EQ(dvl::AutoMapXPos, 64); + EXPECT_EQ(dvl::AutoMapYPos, 32); + EXPECT_EQ(dvl::AMPlayerX, 16); + EXPECT_EQ(dvl::AMPlayerY, 8); +} + +TEST(Automap, AutomapZoomOut) { + dvl::AutoMapScale = 200; + dvl::AutomapZoomOut(); + EXPECT_EQ(dvl::AutoMapScale, 195); + EXPECT_EQ(dvl::AutoMapPosBits, 124); + EXPECT_EQ(dvl::AutoMapXPos, 62); + EXPECT_EQ(dvl::AutoMapYPos, 31); + EXPECT_EQ(dvl::AMPlayerX, 15); + EXPECT_EQ(dvl::AMPlayerY, 7); +} + +TEST(Automap, AutomapZoomOut_Min) { + dvl::AutoMapScale = 55; + dvl::AutomapZoomOut(); + dvl::AutomapZoomOut(); + EXPECT_EQ(dvl::AutoMapScale, 50); + EXPECT_EQ(dvl::AutoMapPosBits, 32); + EXPECT_EQ(dvl::AutoMapXPos, 16); + EXPECT_EQ(dvl::AutoMapYPos, 8); + EXPECT_EQ(dvl::AMPlayerX, 4); + EXPECT_EQ(dvl::AMPlayerY, 2); +} + +TEST(Automap, AutomapZoomReset) { + dvl::AutoMapScale = 50; + dvl::AutoMapXOfs = 1; + dvl::AutoMapYOfs = 1; + dvl::AutomapZoomReset(); + EXPECT_EQ(dvl::AutoMapXOfs, 0); + EXPECT_EQ(dvl::AutoMapYOfs, 0); + EXPECT_EQ(dvl::AutoMapScale, 50); + EXPECT_EQ(dvl::AutoMapPosBits, 32); + EXPECT_EQ(dvl::AutoMapXPos, 16); + EXPECT_EQ(dvl::AutoMapYPos, 8); + EXPECT_EQ(dvl::AMPlayerX, 4); + EXPECT_EQ(dvl::AMPlayerY, 2); +} diff --git a/SourceT/control.cpp b/SourceT/control.cpp deleted file mode 100644 index 438a20448..000000000 --- a/SourceT/control.cpp +++ /dev/null @@ -1,24 +0,0 @@ -#include -#include "devilution.h" - -TEST(Control, SetSpell) { - dvl::pnumlines = 1; - dvl::pinfoflag = true; - dvl::pSpell = dvl::SPL_FIREBOLT; - dvl::pSplType = dvl::RSPLTYPE_CHARGES; - dvl::SetSpell(); - ASSERT_EQ(dvl::spselflag, false); - ASSERT_EQ(dvl::plr[dvl::myplr]._pRSpell, dvl::SPL_FIREBOLT); - ASSERT_EQ(dvl::plr[dvl::myplr]._pRSplType, dvl::RSPLTYPE_CHARGES); - ASSERT_EQ(dvl::pnumlines, 0); - ASSERT_EQ(dvl::pinfoflag, false); - ASSERT_EQ(dvl::force_redraw, 255); -} - -TEST(Control, ClearPanel) { - dvl::pnumlines = 1; - dvl::pinfoflag = true; - dvl::ClearPanel(); - ASSERT_EQ(dvl::pnumlines, 0); - ASSERT_EQ(dvl::pinfoflag, false); -} diff --git a/SourceT/control_test.cpp b/SourceT/control_test.cpp new file mode 100644 index 000000000..a0a445ecf --- /dev/null +++ b/SourceT/control_test.cpp @@ -0,0 +1,24 @@ +#include +#include "devilution.h" + +TEST(Control, SetSpell) { + dvl::pnumlines = 1; + dvl::pinfoflag = true; + dvl::pSpell = dvl::SPL_FIREBOLT; + dvl::pSplType = dvl::RSPLTYPE_CHARGES; + dvl::SetSpell(); + EXPECT_EQ(dvl::spselflag, false); + EXPECT_EQ(dvl::plr[dvl::myplr]._pRSpell, dvl::SPL_FIREBOLT); + EXPECT_EQ(dvl::plr[dvl::myplr]._pRSplType, dvl::RSPLTYPE_CHARGES); + EXPECT_EQ(dvl::pnumlines, 0); + EXPECT_EQ(dvl::pinfoflag, false); + EXPECT_EQ(dvl::force_redraw, 255); +} + +TEST(Control, ClearPanel) { + dvl::pnumlines = 1; + dvl::pinfoflag = true; + dvl::ClearPanel(); + EXPECT_EQ(dvl::pnumlines, 0); + EXPECT_EQ(dvl::pinfoflag, false); +} diff --git a/SourceT/cursor.cpp b/SourceT/cursor.cpp deleted file mode 100644 index c04ee6328..000000000 --- a/SourceT/cursor.cpp +++ /dev/null @@ -1,14 +0,0 @@ -#include -#include "devilution.h" - -TEST(Cursor, SetCursor) { - int i = dvl::ICURS_SPIKED_CLUB + dvl::CURSOR_FIRSTITEM; - dvl::SetCursor_(i); - ASSERT_EQ(dvl::pcurs, i); - ASSERT_EQ(dvl::cursW, 1 * 28); - ASSERT_EQ(dvl::cursH, 3 * 28); - ASSERT_EQ(dvl::icursW, 1 * 28); - ASSERT_EQ(dvl::icursH, 3 * 28); - ASSERT_EQ(dvl::icursW28, 1); - ASSERT_EQ(dvl::icursH28, 3); -} diff --git a/SourceT/cursor_test.cpp b/SourceT/cursor_test.cpp new file mode 100644 index 000000000..01eceb387 --- /dev/null +++ b/SourceT/cursor_test.cpp @@ -0,0 +1,14 @@ +#include +#include "devilution.h" + +TEST(Cursor, SetCursor) { + int i = dvl::ICURS_SPIKED_CLUB + dvl::CURSOR_FIRSTITEM; + dvl::SetCursor_(i); + EXPECT_EQ(dvl::pcurs, i); + EXPECT_EQ(dvl::cursW, 1 * 28); + EXPECT_EQ(dvl::cursH, 3 * 28); + EXPECT_EQ(dvl::icursW, 1 * 28); + EXPECT_EQ(dvl::icursH, 3 * 28); + EXPECT_EQ(dvl::icursW28, 1); + EXPECT_EQ(dvl::icursH28, 3); +}