Exemple #1
0
    def test_get_karma_reasons_all_default(self):
        # Arrange
        for k in default_karma_list():
            k.save()

        # Act
        karma_reasons = Karma.get_current_karma_reasons_for_recipient(
            test_recipient)

        # Assert
        self.assertEqual(len(default_karma_list()),
                         karma_reasons['reasonless'])
        self.assertEqual(0, len(karma_reasons['reasoned']))
Exemple #2
0
    def test_get_karma_reasons_one_non_default(self):
        # Arrange
        karma_list = default_karma_list()
        karma_with_reason = create_karma(reason="This is a silly reason")
        karma_list.append(karma_with_reason)

        for k in karma_list:
            k.save()

        # Act
        karma_reasons = Karma.get_current_karma_reasons_for_recipient(
            test_recipient)

        # Assert
        self.assertEqual(len(default_karma_list()),
                         karma_reasons['reasonless'])
        self.assertEqual(list([karma_with_reason]), karma_reasons['reasoned'])
Exemple #3
0
    def test_karma_reasons_do_not_filter_on_substrings(self):
        # Arrange
        dan_karma = Karma(awarded_to_username="******",
                          reason="a reason",
                          awarded_by_username=test_awarder,
                          awarded=datetime.now(),
                          karma_type=KarmaType.POZZYPOZ)
        dan_karma.save()

        seniordaniel_karma = Karma(awarded_to_username="******",
                                   reason="a different reason",
                                   awarded_by_username=test_awarder,
                                   awarded=datetime.now(),
                                   karma_type=KarmaType.POZZYPOZ)
        seniordaniel_karma.save()

        expected_reasoned_karma = list([dan_karma])

        # Act
        dan_reasons = Karma.get_current_karma_reasons_for_recipient("dan")

        # Assert
        self.assertEqual(expected_reasoned_karma, dan_reasons["reasoned"])
Exemple #4
0
 def get_karma_reasons(self):
     return Karma.get_current_karma_reasons_for_recipient(self.username)
 def execute(self, recipient):
     reasons = Karma.get_current_karma_reasons_for_recipient(recipient)
     return reasons