Exemplo n.º 1
0
class TestSorting1(unittest.TestCase):
    """
    Verify that we can sort on the pscore attribute.
    """

    def setUp(self):

        self.p = Project(title="test pscore")
        self.e1 = Entity(self.p, title="e1")
        self.e2 = Entity(self.p, title="e2")
        self.e3 = Entity(self.p, title="e3")
        self.e4 = Entity(self.p, title="e4")

        print("Original order of entities:")

        for e in self.p:
            print("%(title)s %(pscore)s" % e)

    def test_sort(self):

        assert self.p.length == 4

        assert self.p.order_method == \
        pitz.by_milestone_status_pscore_created_time, \
        self.p.order_method

        for e in self.p:
            assert e['pscore'] == 0, e['pscore']

        assert list(self.p) == [self.e1, self.e2, self.e3, self.e4]

        self.e1['pscore'] = -10
        self.p.order()

        print("After first pscore change")
        for e in self.p:
            print("%(title)s %(pscore)s" % e)

        assert list(self.p) == [self.e2, self.e3, self.e4, self.e1]

        self.e3['pscore'] = 10
        self.p.order()

        print("After second pscore change")
        for e in self.p:
            print "%(title)s %(pscore)s" % e

        assert list(self.p) == [self.e3, self.e2, self.e4, self.e1], \
        "self.p is \n---\n%s\n---\n" % self.p
Exemplo n.º 2
0
class TestByPscoreAndMilestone(unittest.TestCase):
    def setUp(self):

        self.p = Project(title="test sorting...")
        Entity(self.p, title="a", pscore=2)
        Entity(self.p, title="b", pscore=1)
        Entity(self.p, title="c", pscore=3)

    def test_by_pscore_and_milestone(self):

        self.p.order(by_pscore_and_milestone)
        prevscore = 99

        for e in self.p:
            print(e)

            assert e["pscore"] < prevscore, "%s, %s" % (e["pscore"], prevscore)

            prevscore = e["pscore"]