import unittest
from solution_switch_on_the_gravity import switch_gravity_on


class MyTestCase(unittest.TestCase):
    def test_switch_gravity_on(self):
        self.assertEqual(switch_gravity_on([
            ["-", "#", "#", "-"],
            ["-", "-", "-", "-"],
            ["-", "-", "-", "-"],
            ["-", "-", "-", "-"]
        ]), [
            ["-", "-", "-", "-"],
            ["-", "-", "-", "-"],
            ["-", "-", "-", "-"],
            ["-", "#", "#", "-"]
        ])
        self.assertEqual(switch_gravity_on([
            ["-", "#", "#", "-"],
            ["-", "-", "#", "-"],
            ["-", "-", "-", "-"],
        ]
        ),  [
            ["-", "-", "-", "-"],
            ["-", "-", "#", "-"],
            ["-", "#", "#", "-"]
         ])
        self.assertEqual(switch_gravity_on([
            ["-", "#", "#", "#", "#", "-"],
            ["#", "-", "-", "#", "#", "-"],
            ["-", "#", "-", "-", "-", "-"],
            ["-", "-", "-", "-", "-", "-"]
        ]
        ), [
            ["-", "-", "-", "-", "-", "-"],
            ["-", "-", "-", "-", "-", "-"],
            ["-", "#", "-", "#", "#", "-"],
            ["#", "#", "#", "#", "#", "-"]
        ])
        self.assertEqual(switch_gravity_on([
            ["-", "#", "#", "#", "#", "-"],
            ["#", "-", "-", "#", "#", "-"],
            ["-", "#", "-", "-", "-", "-"],
            ["-", "#", "-", "#", "-", "-"]
        ]
        ), [
            ["-", "-", "-", "-", "-", "-"],
            ["-", "#", "-", "#", "-", "-"],
            ["-", "#", "-", "#", "#", "-"],
            ["#", "#", "#", "#", "#", "-"]
        ])
        self.assertEqual(switch_gravity_on([
            ["-", "#", "#", "-"],
            ["-", "-", "#", "-"],
            ["#", "#", "-", "-"],
        ]
        ), [
            ["-", "-", "-", "-"],
            ["-", "#", "#", "-"],
            ["#", "#", "#", "-"]
        ])
        self.assertEqual(switch_gravity_on([
            ["#"],
            ["-"],
            ["#"],
            ["-"]
        ]
        ), [
            ["-"],
            ["-"],
            ["#"],
            ["#"]
        ])
        self.assertEqual(switch_gravity_on([
            ["#"],
            ["#"],
            ["#"],
            ["#"]
        ]
        ), [
            ["#"],
            ["#"],
            ["#"],
            ["#"]
        ])
        self.assertEqual(switch_gravity_on([
            ["#"],
            ["#"],
            ["#"],
            ["-"]
        ]
        ), [
            ["-"],
            ["#"],
            ["#"],
            ["#"]
        ])


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