Browse Source
codec, dead, diablo, doom, drlg_l1, drlg_l2, drlg_l3, drlg_l4 and effectspull/602/head
10 changed files with 169 additions and 1 deletions
@ -0,0 +1,10 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Codec, codec_get_encoded_len) { |
||||
EXPECT_EQ(dvl::codec_get_encoded_len(50), 72); |
||||
} |
||||
|
||||
TEST(Codec, codec_get_encoded_len_eq) { |
||||
EXPECT_EQ(dvl::codec_get_encoded_len(128), 136); |
||||
} |
||||
@ -0,0 +1,12 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Dead, AddDead) { |
||||
dvl::AddDead(21, 48, 8, dvl::DIR_W); |
||||
EXPECT_EQ(dvl::dDead[21][48], 8 + (dvl::DIR_W << 5)); |
||||
} |
||||
|
||||
TEST(Dead, AddDead_OOB) { |
||||
dvl::AddDead(21, 48, MAXDEAD + 1, dvl::DIR_W); |
||||
EXPECT_EQ(dvl::dDead[21][48], 0 + (dvl::DIR_W << 5)); |
||||
} |
||||
@ -0,0 +1,8 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Diablo, diablo_pause_game_unpause) { |
||||
dvl::PauseMode = 1; |
||||
dvl::diablo_pause_game(); |
||||
EXPECT_EQ(dvl::PauseMode, 0); |
||||
} |
||||
@ -0,0 +1,12 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Doom, doom_get_frame_from_time) { |
||||
dvl::DoomQuestState = 1200 * 8 + 548; |
||||
EXPECT_EQ(dvl::doom_get_frame_from_time(), 8); |
||||
} |
||||
|
||||
TEST(Doom, doom_get_frame_from_time_max) { |
||||
dvl::DoomQuestState = 1200 * 30 + 1; |
||||
EXPECT_EQ(dvl::doom_get_frame_from_time(), 31); |
||||
} |
||||
@ -0,0 +1,23 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Drlg_l1, DRLG_Init_Globals_4flag) { |
||||
dvl::lightflag = false; |
||||
dvl::light4flag = true; |
||||
dvl::DRLG_Init_Globals(); |
||||
EXPECT_EQ(dvl::dLight[0][0], 3); |
||||
} |
||||
|
||||
TEST(Drlg_l1, DRLG_Init_Globals_noflag) { |
||||
dvl::lightflag = false; |
||||
dvl::light4flag = false; |
||||
dvl::DRLG_Init_Globals(); |
||||
EXPECT_EQ(dvl::dLight[0][0], 15); |
||||
} |
||||
|
||||
TEST(Drlg_l1, DRLG_Init_Globals) { |
||||
dvl::lightflag = true; |
||||
dvl::DRLG_Init_Globals(); |
||||
EXPECT_EQ(dvl::dLight[0][0], 0); |
||||
} |
||||
|
||||
@ -0,0 +1,8 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Drlg_l2, InitDungeon) { |
||||
dvl::InitDungeon(); |
||||
EXPECT_EQ(dvl::predungeon[0][0], 32); |
||||
EXPECT_EQ(dvl::dflags[0][0], 0); |
||||
} |
||||
@ -0,0 +1,18 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Drlg_l3, AddFenceDoors) { |
||||
dvl::dungeon[5][5] = 7; |
||||
dvl::dungeon[5 - 1][5] = 130; |
||||
dvl::dungeon[5 + 1][5] = 152; |
||||
dvl::AddFenceDoors(); |
||||
EXPECT_EQ(dvl::dungeon[5][5], 146); |
||||
} |
||||
|
||||
TEST(Drlg_l3, AddFenceDoors_no) { |
||||
dvl::dungeon[5][5] = 7; |
||||
dvl::dungeon[5 - 1][5] = 130; |
||||
dvl::dungeon[5 + 1][5] = 153; |
||||
dvl::AddFenceDoors(); |
||||
EXPECT_EQ(dvl::dungeon[5][5], 7); |
||||
} |
||||
@ -0,0 +1,16 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Drlg_l4, IsDURWall) { |
||||
EXPECT_EQ(dvl::IsDURWall(25), true); |
||||
EXPECT_EQ(dvl::IsDURWall(28), true); |
||||
EXPECT_EQ(dvl::IsDURWall(23), true); |
||||
EXPECT_EQ(dvl::IsDURWall(20), false); |
||||
} |
||||
|
||||
TEST(Drlg_l4, IsDLLWall) { |
||||
EXPECT_EQ(dvl::IsDLLWall(27), true); |
||||
EXPECT_EQ(dvl::IsDLLWall(26), true); |
||||
EXPECT_EQ(dvl::IsDLLWall(22), true); |
||||
EXPECT_EQ(dvl::IsDLLWall(20), false); |
||||
} |
||||
@ -0,0 +1,52 @@
|
||||
#include <gtest/gtest.h> |
||||
#include "devilution.h" |
||||
|
||||
TEST(Drlg_l4, calc_snd_position_center) { |
||||
dvl::plr[dvl::myplr].WorldX = 50; |
||||
dvl::plr[dvl::myplr].WorldY = 50; |
||||
int plVolume = 0; |
||||
int plPan = 0; |
||||
EXPECT_EQ(dvl::calc_snd_position(50, 50, &plVolume, &plPan), true); |
||||
EXPECT_EQ(plVolume, 0); |
||||
EXPECT_EQ(plPan, 0); |
||||
} |
||||
|
||||
TEST(Drlg_l4, calc_snd_position_near) { |
||||
dvl::plr[dvl::myplr].WorldX = 50; |
||||
dvl::plr[dvl::myplr].WorldY = 50; |
||||
int plVolume = 0; |
||||
int plPan = 0; |
||||
EXPECT_EQ(dvl::calc_snd_position(55, 50, &plVolume, &plPan), true); |
||||
EXPECT_EQ(plVolume, -320); |
||||
EXPECT_EQ(plPan, 1280); |
||||
} |
||||
|
||||
TEST(Drlg_l4, calc_snd_position_out_of_range) { |
||||
dvl::plr[dvl::myplr].WorldX = 12; |
||||
dvl::plr[dvl::myplr].WorldY = 12; |
||||
int plVolume = 0; |
||||
int plPan = 0; |
||||
EXPECT_EQ(dvl::calc_snd_position(112, 112, &plVolume, &plPan), false); |
||||
ASSERT_GE(plVolume, 6400); |
||||
EXPECT_EQ(plPan, 0); |
||||
} |
||||
|
||||
TEST(Drlg_l4, calc_snd_position_extream_right) { |
||||
dvl::plr[dvl::myplr].WorldX = 50; |
||||
dvl::plr[dvl::myplr].WorldY = 50; |
||||
int plVolume = 0; |
||||
int plPan = 0; |
||||
EXPECT_EQ(dvl::calc_snd_position(76, 50, &plVolume, &plPan), false); |
||||
EXPECT_EQ(plVolume, 0); |
||||
EXPECT_GT(plPan, 6400); |
||||
} |
||||
|
||||
TEST(Drlg_l4, calc_snd_position_extream_left) { |
||||
dvl::plr[dvl::myplr].WorldX = 50; |
||||
dvl::plr[dvl::myplr].WorldY = 50; |
||||
int plVolume = 0; |
||||
int plPan = 0; |
||||
EXPECT_EQ(dvl::calc_snd_position(24, 50, &plVolume, &plPan), false); |
||||
EXPECT_EQ(plVolume, 0); |
||||
EXPECT_LT(plPan, -6400); |
||||
} |
||||
Loading…
Reference in new issue