示例#1
0
    def setUp(self):
        slist = [
            0.06666666666666667, 0.13333333333333333, 0.2, 0.26666666666666666,
            0.3333333333333333
        ]

        self.sel_type = Tournament(selection_list=slist, tournament_size=2)
示例#2
0
class TestTournament(unittest.TestCase):
    def setUp(self):
        slist = [
            0.06666666666666667, 0.13333333333333333, 0.2, 0.26666666666666666,
            0.3333333333333333
        ]

        self.sel_type = Tournament(selection_list=slist, tournament_size=2)

    def test_classinit_(self):

        self.assertEqual(2, self.sel_type._tournament_size)
        self.assertEqual(None, self.sel_type._minmax)

    def test_set_tournament_size(self):
        self.sel_type.set_tournament_size(3)
        self.assertEqual(3, self.sel_type._tournament_size)
        self.assertRaises(ValueError, self.sel_type.set_tournament_size, 10)
        self.assertRaises(ValueError, self.sel_type.set_tournament_size, 6)

    def test_set_minmax(self):

        self.sel_type._set_minmax(MIN)
        self.assertEqual(MIN, self.sel_type._minmax)

        self.sel_type._set_minmax(MAX)
        self.assertEqual(MAX, self.sel_type._minmax)

        self.assertRaises(ValueError, self.sel_type._set_minmax, 'WRONG')

    def test_select(self):
        #   This test should be revisited to prove:
        #       the selection pool was really the tournament_size
        #       the best member was really selected

        #   Min
        self.sel_type._set_minmax(MIN)

        #   Selections are 2 then 1
        count = 0
        for member in self.sel_type.select():
            count += 1

        self.assertEqual(count, len(self.sel_type._selection_list))
class TestTournament(unittest.TestCase):
    def setUp(self):
        slist = [0.06666666666666667, 0.13333333333333333, 0.2, 0.26666666666666666, 0.3333333333333333]

        self.sel_type = Tournament(selection_list=slist, tournament_size=2)

    def test_classinit_(self):

        self.assertEqual(2, self.sel_type._tournament_size)
        self.assertEqual(None, self.sel_type._minmax)

    def test_set_tournament_size(self):
        self.sel_type.set_tournament_size(3)
        self.assertEqual(3, self.sel_type._tournament_size)
        self.assertRaises(ValueError, self.sel_type.set_tournament_size, 10)
        self.assertRaises(ValueError, self.sel_type.set_tournament_size, 6)

    def test_set_minmax(self):

        self.sel_type._set_minmax(MIN)
        self.assertEqual(MIN, self.sel_type._minmax)

        self.sel_type._set_minmax(MAX)
        self.assertEqual(MAX, self.sel_type._minmax)

        self.assertRaises(ValueError, self.sel_type._set_minmax, "WRONG")

    def test_select(self):
        #   This test should be revisited to prove:
        #       the selection pool was really the tournament_size
        #       the best member was really selected

        #   Min
        self.sel_type._set_minmax(MIN)

        #   Selections are 2 then 1
        count = 0
        for member in self.sel_type.select():
            count += 1

        self.assertEqual(count, len(self.sel_type._selection_list))
    def setUp(self):
        slist = [0.06666666666666667, 0.13333333333333333, 0.2, 0.26666666666666666, 0.3333333333333333]

        self.sel_type = Tournament(selection_list=slist, tournament_size=2)