Ejemplo n.º 1
0
    def test_stats_count(self):

        team_temp = TeamTemperatureFactory()

        self.assertEqual(team_temp.stats()['count'], 0)

        TeamResponseFactory(request=team_temp)
        self.assertEqual(team_temp.stats()['count'], 1)

        TeamResponseFactory(request=team_temp)
        TeamResponseFactory(request=team_temp)

        self.assertEqual(team_temp.stats()['count'], 3)
Ejemplo n.º 2
0
    def test_stats_word(self):

        team_temp = TeamTemperatureFactory()

        self.assertEqual(len(team_temp.stats()['words']), 0)

        TeamResponseFactory(request=team_temp, word='first')

        self.assertEqual(len(team_temp.stats()['words']), 1)

        TeamResponseFactory(request=team_temp, word='second')
        TeamResponseFactory(request=team_temp, word='third')

        self.assertEqual(len(team_temp.stats()['words']), 3)
Ejemplo n.º 3
0
    def test_stats_average(self):

        team_temp = TeamTemperatureFactory()

        self.assertIsNone(team_temp.stats()['average']['score__avg'])

        TeamResponseFactory(request=team_temp, score=5)

        self.assertEqual(team_temp.stats()['average']['score__avg'], 5.0)

        TeamResponseFactory(request=team_temp, score=7)
        TeamResponseFactory(request=team_temp, score=6)

        self.assertEqual(team_temp.stats()['average']['score__avg'], 6.0)
Ejemplo n.º 4
0
    def test_team_temperature(self):
        teamtemp = TeamTemperatureFactory()
        self.assertTrue(len(teamtemp.id) > 0)
        self.assertIsNotNone(teamtemp.creation_date)
        self.assertIsNotNone(teamtemp.modified_date)
        self.assertEqual(teamtemp.survey_type, 'TEAMTEMP')
        self.assertRegexpMatches(str(teamtemp), "%s: %s %s " % (
            teamtemp.id, teamtemp.creator.id, re.escape(str(teamtemp.creation_date))))

        stats, query_set = teamtemp.stats()
        self.assertEqual(stats['count'], 0)
        self.assertIsNone(stats['average']['score__avg'])
        self.assertEqual(stats['words'].count(), 0)
        self.assertEqual(query_set.count(), 0)
    def test_multiple_responses_for_a_survey(self):
        teamtemp = TeamTemperatureFactory()
        response1 = TemperatureResponseFactory(request=teamtemp)
        response2 = TemperatureResponseFactory(request=teamtemp)
        response3 = TemperatureResponseFactory(request=teamtemp,
                                               word=response2.word)
        self.assertEqual(teamtemp.temperature_responses.count(), 3)

        stats, query_set = teamtemp.stats()

        self.assertEqual(stats['count'], 3)
        self.assertEqual(
            stats['average']['score__avg'],
            old_div(float(response1.score + response2.score + response3.score),
                    3))

        words = [[x['word']] * x['id__count'] for x in stats['words']]
        flat_words = sorted(itertools.chain(*words))

        self.assertEqual(
            flat_words,
            sorted([response1.word, response2.word, response3.word]))

        self.assertEqual(query_set.count(), 3)