Passed
Push — master ( 494aef...84c2ee )
by Alexander
02:45
created

Test_TestRun.test_send_mail_after_test_run_creation()   A

Complexity

Conditions 2

Size

Total Lines 12
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 9
dl 0
loc 12
rs 9.95
c 0
b 0
f 0
cc 2
nop 2
1
# -*- coding: utf-8 -*-
2
# pylint: disable=too-many-ancestors
3
4
from mock import patch
5
6
from django.utils.translation import ugettext_lazy as _
7
8
from tcms.tests import BaseCaseRun
9
from tcms.tests.factories import TestRunFactory
10
from tcms.testcases.models import BugSystem
11
12
13
class Test_TestRun(BaseCaseRun):  # pylint: disable=invalid-name
14
    @classmethod
15
    def setUpTestData(cls):
16
        super().setUpTestData()
17
18
        bug_tracker = BugSystem.objects.first()
19
        cls.empty_test_run = TestRunFactory(product_version=cls.version,
20
                                            plan=cls.plan,
21
                                            manager=cls.tester,
22
                                            default_tester=cls.tester)
23
24
        # Add bugs to case runs
25
        cls.case_run_1.add_bug('12345', bug_tracker.pk)
26
        cls.case_run_1.add_bug('909090', bug_tracker.pk)
27
        cls.case_run_3.add_bug('4567890', bug_tracker.pk)
28
29
    def test_get_bugs_count_if_no_bugs_added(self):
30
        self.assertEqual(0, self.empty_test_run.get_bug_count())
31
32
    def test_get_bugs_count(self):
33
        self.assertEqual(3, self.test_run.get_bug_count())
34
35
    @patch('tcms.core.utils.mailto.send_mail')
36
    def test_send_mail_after_test_run_creation(self, send_mail):
37
        test_run = TestRunFactory(plan=self.plan)
38
39
        recipients = test_run.get_notify_addrs()
40
41
        # Verify notification mail
42
        self.assertIn(_("NEW: TestRun #%(pk)d - %(summary)s") %
43
                      {'pk': test_run.pk, 'summary': test_run.summary},
44
                      send_mail.call_args_list[0][0][0])
45
        for recipient in recipients:
46
            self.assertIn(recipient, send_mail.call_args_list[0][0][-1])
47