Lesson results commit
This commit is contained in:
parent
5542ac14d7
commit
82b9166af2
|
@ -107,6 +107,9 @@ class ShipField:
|
|||
if self.ship_size in self.ships:
|
||||
self.ships.remove(self.ship_size)
|
||||
|
||||
if self.ship_size not in self.ships and len(self.ships) > 0:
|
||||
self.ship_size = max(self.ships) # min(self.ships) self.ships[0]
|
||||
|
||||
def get_ship(self, row, col):
|
||||
if row < 0 or row > ShipField.field_size:
|
||||
return
|
||||
|
|
|
@ -5,8 +5,6 @@ from tkinter import *
|
|||
from ShipField import ShipField
|
||||
from ShipView import ShipView
|
||||
|
||||
active_view = {}
|
||||
|
||||
|
||||
def create_view(window, col_offset=0, row_offset=0):
|
||||
field = ShipField()
|
||||
|
@ -129,6 +127,7 @@ load_button_row = start_row_my_field + ShipField.field_size + 1
|
|||
|
||||
my_view = create_view(window, start_column_my_field, start_row_my_field)
|
||||
enemy_view = create_view(window, start_column_enemy_field, start_row_enemy_field)
|
||||
active_view = my_view
|
||||
|
||||
if start_column_my_field > 0:
|
||||
lbl_left_vertical = Label(window, text='', width=5, height=2)
|
||||
|
|
|
@ -58,7 +58,41 @@ class TestShipField(TestCase):
|
|||
def test_action(self):
|
||||
self.fail()
|
||||
|
||||
def test_target(self):
|
||||
def test_target_ShipMode_PUT(self):
|
||||
ship_field = ShipField()
|
||||
ship_field.set_ship_size(3)
|
||||
ship_field.set_ship_direction(ShipDirection.HORIZONTAL)
|
||||
index = 5 * ship_field.field_size + 5
|
||||
|
||||
old_field_string = str.join(' ', ship_field.field)
|
||||
ship_field.target(5, 5)
|
||||
fields_after_target = [ship_field.field[index], ship_field.field[index+1], ship_field.field[index+2]]
|
||||
ship_field.field[index] = ' '
|
||||
ship_field.field[index + 1] = ' '
|
||||
ship_field.field[index + 2] = ' '
|
||||
new_field_string = str.join(' ', ship_field.field)
|
||||
|
||||
self.assertListEqual(['p', 'p', 'p'], fields_after_target)
|
||||
self.assertNotIn('p', new_field_string)
|
||||
self.assertEqual(new_field_string, old_field_string)
|
||||
|
||||
def test_target_ShipMode_SHOOT(self):
|
||||
ship_field = ShipField()
|
||||
ship_field.toggle_field_mode()
|
||||
|
||||
index = 5 * ship_field.field_size + 5
|
||||
|
||||
old_field_string = str.join(' ', ship_field.field)
|
||||
ship_field.target(5, 5)
|
||||
field_after_target = ship_field.field[index]
|
||||
ship_field.field[index] = ship_field.field[index].replace('+', '')
|
||||
new_field_string = str.join(' ', ship_field.field)
|
||||
|
||||
self.assertIn('+', field_after_target)
|
||||
self.assertNotIn('+', new_field_string)
|
||||
self.assertEqual(new_field_string, old_field_string)
|
||||
|
||||
def test_get_ship(self):
|
||||
self.fail()
|
||||
|
||||
def test_clear_marker(self):
|
||||
|
|
Loading…
Reference in New Issue