def test_sort_1(self):
        with patch('grade_rank_system.open', self.m_open_1):
            tgrs = GradeRankSystem()
            tgrs.read('grade.csv')

        result = tgrs.sort(order_key="gid")
        self.assertEqual('1,양수열,95,92,88,275,91.7', result)
    def test_sort_5(self):
        with patch('grade_rank_system.open', self.m_open_2):
            tgrs = GradeRankSystem()
            tgrs.read('grade.csv')

        result = tgrs.sort(order_way="des")
        self.assertEqual(
            '2,이승수,80,70,60,210,70.0,2\n1,양수열,95,92,88,275,91.7,1', result)
    def test_read_1(self):

        with patch('grade_rank_system.open', self.m_open_1):
            tgrs = GradeRankSystem()
            self.assertEqual(1, tgrs.read('grade_data.csv'))

        self.m_open_1.assert_called_with('grade_data.csv',
                                         'rt',
                                         encoding="utf-8")
    def test_write_2(self):
        with patch('grade_rank_system.open', self.m_write_open_1):
            tgrs = GradeRankSystem()
            tgrs.read('grade.csv')
            tgrs.write('result.csv', 'rank', 'des')

        self.m_w.write.assert_called_with(
            '2,이승수,80,70,60,210,70.0,2\n1,양수열,95,92,88,275,91.7,1')
    def test_write_3(self):
        with patch('grade_rank_system.open', self.m_write_open_1):
            tgrs = GradeRankSystem()
            tgrs.read('grade.csv')
            tgrs.write('result.csv', 'gid', 'asc')

        self.m_w.write.assert_called_with(
            '1,양수열,95,92,88,275,91.7\n2,이승수,80,70,60,210,70.0')
from grade_rank_system import GradeRankSystem

if __name__ == "__main__":
    grs_rank = GradeRankSystem()
    grs_id = GradeRankSystem()

    grs_rank.read('score.csv')
    print(grs_rank.sort())
    grs_rank.write('score_rank_result.csv')

    grs_id.read('score.csv')
    print(grs_id.sort("gid"))
    grs_id.write('score_id_result.csv', "gid")
    def test_read_2(self):

        with patch('grade_rank_system.open', self.m_open_2):
            tgrs = GradeRankSystem()
            self.assertEqual(2, tgrs.read('grade_data1.csv'))
 def test_constructor(self):
     tgrs = GradeRankSystem()
     self.assertIsNotNone(tgrs)