#include "gtest/gtest.h"
#include <algorithm>
#include <cstdint>
Go to the source code of this file.
|
| | TEST (ResetAttackTimerTest, NormalReset_TimerAtZero) |
| |
| | TEST (ResetAttackTimerTest, NormalReset_SmallNegativeTimer) |
| |
| | TEST (ResetAttackTimerTest, LagSpike_LargeNegativeTimer) |
| |
| | TEST (ResetAttackTimerTest, GluthParryHaste_BurstAttack) |
| |
| | TEST (ResetAttackTimerTest, ParryHasteFloor_MultipleParries) |
| |
| | TEST (ResetAttackTimerTest, ConsecutiveBursts_OldFormulaChainAttacks) |
| |
| | TEST (ResetAttackTimerTest, HasteModifier_CorrectCalculation) |
| |
| | TEST (ResetAttackTimerTest, EdgeCase_TimerEqualsNegativeFullTime) |
| |
| | TEST (ResetAttackTimerTest, EdgeCase_PositiveTimer) |
| |
| | TEST (ResetAttackTimerTest, Invariant_AlwaysReturnsFullTime) |
| |
◆ TEST() [1/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
ConsecutiveBursts_OldFormulaChainAttacks |
|
|
) |
| |
147{
148 int32_t fullTime = CalcFullTime(1600, 0.8f);
149 int32_t timer = -2500;
150
151 int attackCount = 0;
152
153 while (timer <= 0)
154 {
155 attackCount++;
156 timer = OldResetFormula(timer, fullTime);
157 }
158
159
160 EXPECT_GT(attackCount, 1);
161
162
163 timer = -2500;
164 int newAttackCount = 0;
165
166 timer = NewResetFormula(timer, fullTime);
167 if (timer > 0)
168 newAttackCount = 1;
169
170 EXPECT_EQ(newAttackCount, 1);
171 EXPECT_GT(timer, 0);
172}
◆ TEST() [2/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
EdgeCase_PositiveTimer |
|
|
) |
| |
206{
207 int32_t fullTime = CalcFullTime(2000, 1.0f);
208 int32_t currentTimer = 500;
209
210
211
212 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 2000);
213
214
215 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 2000);
216}
◆ TEST() [3/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
EdgeCase_TimerEqualsNegativeFullTime |
|
|
) |
| |
192{
193 int32_t fullTime = CalcFullTime(2000, 1.0f);
194 int32_t currentTimer = -2000;
195
196
197
198 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 0);
199
200
201 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 2000);
202}
◆ TEST() [4/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
GluthParryHaste_BurstAttack |
|
|
) |
| |
101{
102
103
104 int32_t fullTime = CalcFullTime(1600, 0.8f);
105 EXPECT_EQ(fullTime, 1280);
106
107
108
109 int32_t currentTimer = -2000;
110
111
112
113 EXPECT_LT(OldResetFormula(currentTimer, fullTime), 0);
114
115
116 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 1280);
117}
◆ TEST() [5/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
HasteModifier_CorrectCalculation |
|
|
) |
| |
176{
177
178 EXPECT_EQ(CalcFullTime(2000, 1.0f), 2000);
179
180
181 EXPECT_EQ(CalcFullTime(2000, 0.8f), 1600);
182
183
184 EXPECT_EQ(CalcFullTime(2000, 1.5f), 3000);
185
186
187 EXPECT_EQ(CalcFullTime(1600, 0.8f), 1280);
188}
◆ TEST() [6/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
Invariant_AlwaysReturnsFullTime |
|
|
) |
| |
220{
221 int32_t fullTime = CalcFullTime(1600, 1.0f);
222
223
224 for (int32_t timer = -10000; timer <= 10000; timer += 100)
225 EXPECT_EQ(NewResetFormula(timer, fullTime), fullTime);
226}
◆ TEST() [7/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
LagSpike_LargeNegativeTimer |
|
|
) |
| |
87{
88 int32_t fullTime = CalcFullTime(2000, 1.0f);
89 int32_t currentTimer = -3000;
90
91
92
93 EXPECT_LT(OldResetFormula(currentTimer, fullTime), 0);
94
95
96 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 2000);
97}
◆ TEST() [8/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
NormalReset_SmallNegativeTimer |
|
|
) |
| |
73{
74 int32_t fullTime = CalcFullTime(2000, 1.0f);
75 int32_t currentTimer = -50;
76
77
78
79 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 1950);
80
81
82 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 2000);
83}
◆ TEST() [9/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
NormalReset_TimerAtZero |
|
|
) |
| |
62{
63 int32_t fullTime = CalcFullTime(2000, 1.0f);
64 int32_t currentTimer = 0;
65
66
67 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 2000);
68 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 2000);
69}
◆ TEST() [10/10]
| TEST |
( |
ResetAttackTimerTest |
, |
|
|
ParryHasteFloor_MultipleParries |
|
|
) |
| |
121{
122
123 int32_t fullTime = CalcFullTime(1600, 1.0f);
124
125
126
127
128
129 int32_t currentTimer = -80;
130
131
132
133 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 1520);
134
135
136
137 currentTimer = 320 - 500;
138
139 EXPECT_EQ(OldResetFormula(currentTimer, fullTime), 1420);
140
141
142 EXPECT_EQ(NewResetFormula(currentTimer, fullTime), 1600);
143}