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:
|
if self.ship_size in self.ships:
|
||||||
self.ships.remove(self.ship_size)
|
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):
|
def get_ship(self, row, col):
|
||||||
if row < 0 or row > ShipField.field_size:
|
if row < 0 or row > ShipField.field_size:
|
||||||
return
|
return
|
||||||
|
|
|
@ -5,8 +5,6 @@ from tkinter import *
|
||||||
from ShipField import ShipField
|
from ShipField import ShipField
|
||||||
from ShipView import ShipView
|
from ShipView import ShipView
|
||||||
|
|
||||||
active_view = {}
|
|
||||||
|
|
||||||
|
|
||||||
def create_view(window, col_offset=0, row_offset=0):
|
def create_view(window, col_offset=0, row_offset=0):
|
||||||
field = ShipField()
|
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)
|
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)
|
enemy_view = create_view(window, start_column_enemy_field, start_row_enemy_field)
|
||||||
|
active_view = my_view
|
||||||
|
|
||||||
if start_column_my_field > 0:
|
if start_column_my_field > 0:
|
||||||
lbl_left_vertical = Label(window, text='', width=5, height=2)
|
lbl_left_vertical = Label(window, text='', width=5, height=2)
|
||||||
|
|
|
@ -58,7 +58,41 @@ class TestShipField(TestCase):
|
||||||
def test_action(self):
|
def test_action(self):
|
||||||
self.fail()
|
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()
|
self.fail()
|
||||||
|
|
||||||
def test_clear_marker(self):
|
def test_clear_marker(self):
|
||||||
|
|
Loading…
Reference in New Issue