Skip to content

Commit d7a64b2

Browse files
authored
Merge pull request #5 from CDaffyJr/fix_sprint2
Wrapping up sprint 2
2 parents aa0e87f + 1a91ad0 commit d7a64b2

File tree

2 files changed

+60
-4
lines changed

2 files changed

+60
-4
lines changed

tests/test_random.py

+44
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
from torpydo.battleship import overlaps, set_direction, set_forward_rear
2+
from torpydo.ship import Letter, Position, Ship, Color
3+
4+
def test_not_overlaps():
5+
ship = Ship("test",5,Color.RED)
6+
ship.add_position("B1")
7+
assert overlaps(
8+
[
9+
Position(Letter.A,1),
10+
Position(Letter.A,2)
11+
],
12+
fleet=[
13+
ship
14+
]
15+
) == False
16+
17+
def test_overlaps():
18+
ship = Ship("test",5, Color.RED)
19+
ship.add_position("A2")
20+
assert overlaps(
21+
[
22+
Position(Letter.A,1),
23+
Position(Letter.A,2)
24+
],
25+
fleet=[
26+
ship
27+
]
28+
) == True
29+
30+
def test_set_forward_read():
31+
assert set_forward_rear(5,3,6) == 0
32+
assert set_forward_rear(5,1,7) == 1
33+
assert set_forward_rear(2,3,8) == 1
34+
assert set_forward_rear(3,5,7) == 1
35+
assert set_forward_rear(3,5,6) == -1
36+
37+
def test_set_direction():
38+
axis, st_value = set_direction(Position(Letter.A,1))
39+
assert axis == "horizontal"
40+
assert st_value == 1
41+
axis, st_value = set_direction(Position(Letter.A,2))
42+
assert axis == "vertical"
43+
assert st_value == 2
44+

torpydo/battleship.py

+16-4
Original file line numberDiff line numberDiff line change
@@ -178,9 +178,11 @@ def get_random_position(board: list):
178178
return position
179179

180180
def initialize_game():
181-
initialize_myFleet()
182181

183182
initialize_enemyFleet()
183+
initialize_myFleet()
184+
185+
184186

185187
def initialize_myFleet():
186188
global myFleet
@@ -285,18 +287,28 @@ def place_this_ship(ship:Ship, st_point:Position, enemyFleet:List[Ship]):
285287
else:
286288
return False
287289

290+
def get_random_position_2():
291+
rows = 8
292+
lines = 8
293+
294+
letter = Letter(random.randint(1, lines))
295+
number = random.randint(1, rows)
296+
position = Position(letter, number)
297+
298+
return position
299+
288300
def initialize_enemyFleet():
289301
global enemyFleet
290302

291303
enemyFleet = GameController.initialize_ships()
292304

293305
for ship in enemyFleet:
294-
ship_strating_point = get_random_position()
306+
ship_strating_point = get_random_position_2()
295307
while not place_this_ship(ship,ship_strating_point, enemyFleet):
296-
ship_strating_point = get_random_position()
308+
ship_strating_point = get_random_position_2()
297309

298310

299-
# print(enemyFleet)
311+
#print(enemyFleet)
300312

301313
def check_position_input(msg: str):
302314
string = input(msg)

0 commit comments

Comments
 (0)