@@ -69,14 +69,56 @@ func TestPlayerFlashed_FlashDuration_Over(t *testing.T) {
6969 assert .False (t , pl .IsBlinded (), "Should not be flashed" )
7070}
7171
72+ func TestPlayer_FlashDurationTime_Default (t * testing.T ) {
73+ pl := newPlayer (0 )
74+
75+ assert .Equal (t , time .Duration (0 ), pl .FlashDurationTime ())
76+ }
77+
7278func TestPlayer_FlashDurationTime (t * testing.T ) {
73- p := newPlayer (0 )
79+ pl := newPlayer (0 )
80+
81+ pl .FlashDuration = 2.3
82+
83+ assert .Equal (t , 2300 * time .Millisecond , pl .FlashDurationTime ())
84+ }
85+
86+ func TestPlayer_FlashDurationTimeRemaining_Default (t * testing.T ) {
87+ pl := NewPlayer (0 , tickProvider (128 ))
88+
89+ assert .Equal (t , time .Duration (0 ), pl .FlashDurationTimeRemaining ())
90+ }
7491
75- assert .Equal (t , time .Duration (0 ), p .FlashDurationTime ())
92+ func TestPlayer_FlashDurationTimeRemaining (t * testing.T ) {
93+ pl := newPlayer (128 * 2 )
94+
95+ pl .FlashDuration = 3
96+ pl .FlashTick = 128
97+ assert .Equal (t , 2 * time .Second , pl .FlashDurationTimeRemaining ())
98+ }
99+
100+ func TestPlayer_FlashDurationTimeRemaining_Zero (t * testing.T ) {
101+ pl := newPlayer (128 * 4 )
102+
103+ pl .FlashDuration = 3
104+ pl .FlashTick = 128
105+ assert .Equal (t , time .Duration (0 ), pl .FlashDurationTimeRemaining ())
106+ }
107+
108+ func TestPlayer_FlashDurationTimeRemaining_FlashDuration_Over (t * testing.T ) {
109+ pl := newPlayer (128 * 4 )
110+
111+ pl .FlashDuration = 1
112+ pl .FlashTick = 128
113+ assert .Equal (t , time .Duration (0 ), pl .FlashDurationTimeRemaining ())
114+ }
76115
77- p .FlashDuration = 2.3
116+ func TestPlayer_FlashDurationTimeRemaining_Fallback (t * testing.T ) {
117+ pl := NewPlayer (0 , tickProvider (128 ))
78118
79- assert .Equal (t , 2300 * time .Millisecond , p .FlashDurationTime ())
119+ pl .FlashDuration = 2
120+ pl .FlashTick = 128 * 2
121+ assert .Equal (t , 2 * time .Second , pl .FlashDurationTimeRemaining ())
80122}
81123
82124func newPlayer (tick int ) * Player {
0 commit comments