"""
------------------------------------------------------------------------------
--                                                                          --
--                               PROJECT 2                                  --
--                                                                          --
--                     P A C K I N G _ T E S T S . P Y                      --
--                                                                          --
------------------------------------------------------------------------------
-- <Your Name Here>                                                         --
--                                                                          --
-- <Class Name Here>                                                        --
--                                                                          --
------------------------------------------------------------------------------
-- This file contains unit tests for Project 2.                             --
--                                                                          --
------------------------------------------------------------------------------
"""

from packing import *
import unittest

class TestPacking(unittest.TestCase):
    def test_fit(self):
        self.assertEqual(
            Board.fit(Board(1,4,[]), 0, 0, getShape('I')), 
            (True, 0))
        self.assertEqual(
            Board.fit(Board(2,3,[[True,True,False],[False,False,False]]), 0, 0, getShape('L')),
            (True, 2))

    def test_find_one_place(self):
        self.assertEqual(
            Board.find_one_place(Board(2,3,[]), getShape('L')),
            (True, 0,0,0))
        self.assertEqual(
            Board.find_one_place(Board(2,4,[[True,False,False,False],[False,False,False,False]]), getShape('L')),
            (True, 0,0,1))

    def test_find_best_place(self):
        self.assertEqual(Board.find_best_place(Board(3,4,[]), getShape('L')), (True, 1,1,0))

if __name__ == '__main__':
    unittest.main()
