|
12 | 12 | from django.core.urlresolvers import reverse as urlreverse |
13 | 13 |
|
14 | 14 | from ietf.doc.models import Document, DocAlias, DocEvent, State |
15 | | -from ietf.group.models import Group, GroupEvent, GroupMilestone, GroupStateTransitions, MilestoneGroupEvent |
| 15 | +from ietf.group.models import Group, GroupEvent, GroupMilestone, GroupStateTransitions |
16 | 16 | from ietf.group.utils import save_group_in_history |
17 | 17 | from ietf.name.models import DocTagName, GroupStateName |
18 | 18 | from ietf.person.models import Person, Email |
19 | 19 | from ietf.utils.test_utils import TestCase |
20 | 20 | from ietf.utils.mail import outbox, empty_outbox |
21 | 21 | from ietf.utils.test_data import make_test_data |
22 | 22 | from ietf.utils.test_utils import login_testing_unauthorized |
23 | | -from ietf.group.mails import ( email_milestone_review_reminder, email_milestones_due, |
24 | | - email_milestones_overdue, groups_needing_milestones_due_reminder, |
25 | | - groups_needing_milestones_overdue_reminder, groups_with_milestones_needing_review ) |
26 | 23 |
|
27 | 24 | class GroupPagesTests(TestCase): |
28 | 25 | def setUp(self): |
@@ -786,137 +783,6 @@ def test_reset_charter_milestones(self): |
786 | 783 |
|
787 | 784 | self.assertEqual(group.charter.docevent_set.count(), events_before + 2) # 1 delete, 1 add |
788 | 785 |
|
789 | | - def test_send_review_needed_reminders(self): |
790 | | - make_test_data() |
791 | | - |
792 | | - group = Group.objects.get(acronym="mars") |
793 | | - person = Person.objects.get(user__username="marschairman") |
794 | | - |
795 | | - m1 = GroupMilestone.objects.create(group=group, |
796 | | - desc="Test 1", |
797 | | - due=datetime.date.today(), |
798 | | - resolved="", |
799 | | - state_id="review") |
800 | | - MilestoneGroupEvent.objects.create( |
801 | | - group=group, type="changed_milestone", |
802 | | - by=person, desc='Added milestone "%s"' % m1.desc, milestone=m1, |
803 | | - time=datetime.datetime.now() - datetime.timedelta(seconds=60)) |
804 | | - |
805 | | - # send |
806 | | - mailbox_before = len(outbox) |
807 | | - for g in groups_with_milestones_needing_review(): |
808 | | - email_milestone_review_reminder(g) |
809 | | - |
810 | | - self.assertEqual(len(outbox), mailbox_before) # too early to send reminder |
811 | | - |
812 | | - |
813 | | - # add earlier added milestone |
814 | | - m2 = GroupMilestone.objects.create(group=group, |
815 | | - desc="Test 2", |
816 | | - due=datetime.date.today(), |
817 | | - resolved="", |
818 | | - state_id="review") |
819 | | - MilestoneGroupEvent.objects.create( |
820 | | - group=group, type="changed_milestone", |
821 | | - by=person, desc='Added milestone "%s"' % m2.desc, milestone=m2, |
822 | | - time=datetime.datetime.now() - datetime.timedelta(days=10)) |
823 | | - |
824 | | - # send |
825 | | - mailbox_before = len(outbox) |
826 | | - for g in groups_with_milestones_needing_review(): |
827 | | - email_milestone_review_reminder(g) |
828 | | - |
829 | | - self.assertEqual(len(outbox), mailbox_before + 1) |
830 | | - self.assertTrue(group.acronym in outbox[-1]["Subject"]) |
831 | | - self.assertTrue(m1.desc in unicode(outbox[-1])) |
832 | | - self.assertTrue(m2.desc in unicode(outbox[-1])) |
833 | | - |
834 | | - def test_send_milestones_due_reminders(self): |
835 | | - make_test_data() |
836 | | - |
837 | | - group = Group.objects.get(acronym="mars") |
838 | | - |
839 | | - early_warning_days = 30 |
840 | | - |
841 | | - # due dates here aren't aligned on the last day of the month, |
842 | | - # but everything should still work |
843 | | - |
844 | | - m1 = GroupMilestone.objects.create(group=group, |
845 | | - desc="Test 1", |
846 | | - due=datetime.date.today(), |
847 | | - resolved="Done", |
848 | | - state_id="active") |
849 | | - m2 = GroupMilestone.objects.create(group=group, |
850 | | - desc="Test 2", |
851 | | - due=datetime.date.today() + datetime.timedelta(days=early_warning_days - 10), |
852 | | - resolved="", |
853 | | - state_id="active") |
854 | | - |
855 | | - # send |
856 | | - mailbox_before = len(outbox) |
857 | | - for g in groups_needing_milestones_due_reminder(early_warning_days): |
858 | | - email_milestones_due(g, early_warning_days) |
859 | | - |
860 | | - self.assertEqual(len(outbox), mailbox_before) # none found |
861 | | - |
862 | | - m1.resolved = "" |
863 | | - m1.save() |
864 | | - |
865 | | - m2.due = datetime.date.today() + datetime.timedelta(days=early_warning_days) |
866 | | - m2.save() |
867 | | - |
868 | | - # send |
869 | | - mailbox_before = len(outbox) |
870 | | - for g in groups_needing_milestones_due_reminder(early_warning_days): |
871 | | - email_milestones_due(g, early_warning_days) |
872 | | - |
873 | | - self.assertEqual(len(outbox), mailbox_before + 1) |
874 | | - self.assertTrue(group.acronym in outbox[-1]["Subject"]) |
875 | | - self.assertTrue(m1.desc in unicode(outbox[-1])) |
876 | | - self.assertTrue(m2.desc in unicode(outbox[-1])) |
877 | | - |
878 | | - def test_send_milestones_overdue_reminders(self): |
879 | | - make_test_data() |
880 | | - |
881 | | - group = Group.objects.get(acronym="mars") |
882 | | - |
883 | | - # due dates here aren't aligned on the last day of the month, |
884 | | - # but everything should still work |
885 | | - |
886 | | - m1 = GroupMilestone.objects.create(group=group, |
887 | | - desc="Test 1", |
888 | | - due=datetime.date.today() - datetime.timedelta(days=200), |
889 | | - resolved="Done", |
890 | | - state_id="active") |
891 | | - m2 = GroupMilestone.objects.create(group=group, |
892 | | - desc="Test 2", |
893 | | - due=datetime.date.today() - datetime.timedelta(days=10), |
894 | | - resolved="", |
895 | | - state_id="active") |
896 | | - |
897 | | - # send |
898 | | - mailbox_before = len(outbox) |
899 | | - for g in groups_needing_milestones_overdue_reminder(grace_period=30): |
900 | | - email_milestones_overdue(g) |
901 | | - |
902 | | - self.assertEqual(len(outbox), mailbox_before) # none found |
903 | | - |
904 | | - m1.resolved = "" |
905 | | - m1.save() |
906 | | - |
907 | | - m2.due = self.last_day_of_month(datetime.date.today() - datetime.timedelta(days=300)) |
908 | | - m2.save() |
909 | | - |
910 | | - # send |
911 | | - mailbox_before = len(outbox) |
912 | | - for g in groups_needing_milestones_overdue_reminder(grace_period=30): |
913 | | - email_milestones_overdue(g) |
914 | | - |
915 | | - self.assertEqual(len(outbox), mailbox_before + 1) |
916 | | - self.assertTrue(group.acronym in outbox[-1]["Subject"]) |
917 | | - self.assertTrue(m1.desc in unicode(outbox[-1])) |
918 | | - self.assertTrue(m2.desc in unicode(outbox[-1])) |
919 | | - |
920 | 786 | class CustomizeWorkflowTests(TestCase): |
921 | 787 | def test_customize_workflow(self): |
922 | 788 | make_test_data() |
|
0 commit comments