6
6
7
7
8
8
class TestMailActivityDoneMethods (TransactionCase ):
9
- def setUp (self ):
10
- super ().setUp ()
9
+ @classmethod
10
+ def setUpClass (cls ):
11
+ super ().setUpClass ()
11
12
12
- self . employee = self .env ["res.users" ].create (
13
+ cls . user = cls .env ["res.users" ].create (
13
14
{
14
- "company_id" : self .env .ref ("base.main_company" ).id ,
15
+ "company_id" : cls .env .ref ("base.main_company" ).id ,
15
16
"name" : "Test User" ,
16
17
"login" : "testuser" ,
17
- "groups_id" : [(6 , 0 , [self .env .ref ("base.group_user" ).id ])],
18
+ "groups_id" : [(6 , 0 , [cls .env .ref ("base.group_user" ).id ])],
18
19
}
19
20
)
20
- activity_type = self .env ["mail.activity.type" ].search (
21
+ activity_type = cls .env ["mail.activity.type" ].search (
21
22
[("name" , "=" , "Meeting" )], limit = 1
22
23
)
23
- self .act1 = self .env ["mail.activity" ].create (
24
+ cls .act1 = cls .env ["mail.activity" ].create (
24
25
{
25
26
"activity_type_id" : activity_type .id ,
26
- "res_id" : self .env .ref ("base.res_partner_1" ).id ,
27
+ "res_id" : cls .env .ref ("base.res_partner_1" ).id ,
27
28
"res_model" : "res.partner" ,
28
- "res_model_id" : self .env ["ir.model" ]._get ("res.partner" ).id ,
29
- "user_id" : self . employee .id ,
29
+ "res_model_id" : cls .env ["ir.model" ]._get ("res.partner" ).id ,
30
+ "user_id" : cls . user .id ,
30
31
"date_deadline" : date .today (),
31
32
}
32
33
)
@@ -36,23 +37,57 @@ def test_mail_activity_done(self):
36
37
self .assertTrue (self .act1 .exists ())
37
38
self .assertEqual (self .act1 .state , "done" )
38
39
39
- def test_systray_get_activities (self ):
40
- act_count = self .employee .with_user (self .employee ). systray_get_activities ()
40
+ def test_get_activity_groups (self ):
41
+ act_count = self .user .with_user (self .user ). _get_activity_groups ()
41
42
self .assertEqual (
42
43
len (act_count ), 1 , "Number of activities should be equal to one"
43
44
)
45
+ self .assertEqual (act_count [0 ]["total_count" ], 1 )
46
+ self .act1 ._action_done ()
47
+ self .act1 .flush_recordset ()
48
+ act_count = self .user .with_user (self .user )._get_activity_groups ()
49
+ self .assertFalse (act_count )
44
50
45
51
def test_read_progress_bar (self ):
46
- res_partner = self .env ["res.partner" ].browse (self .act1 .res_model_id )
52
+ partner = self .env ["res.partner" ].browse (self .act1 .res_id )
47
53
params = {
48
- "domain" : [],
54
+ "domain" : [( "id" , "=" , partner . id ) ],
49
55
"group_by" : "id" ,
50
- "progress_bar" : {"field" : "activity_state" },
56
+ "progress_bar" : {
57
+ "field" : "activity_state" ,
58
+ "colors" : {
59
+ "overdue" : "danger" ,
60
+ "today" : "warning" ,
61
+ "planned" : "success" ,
62
+ },
63
+ },
51
64
}
52
- result = res_partner ._read_progress_bar (** params )
53
- self .assertEqual (result [0 ]["__count" ], 1 )
65
+ # The activity is present in the progress bar
66
+ self .assertEqual (
67
+ partner .read_progress_bar (** params ),
68
+ {str (partner .id ): {"overdue" : 0 , "today" : 1 , "planned" : 0 }},
69
+ )
70
+ # After marking the activity as done, it is removed from the progress bar
71
+ self .act1 ._action_done ()
72
+ self .act1 .flush_recordset ()
73
+ self .assertEqual (
74
+ partner .read_progress_bar (** params ),
75
+ {str (partner .id ): {"overdue" : 0 , "today" : 0 , "planned" : 0 }},
76
+ )
54
77
78
+ def test_activity_state_search (self ):
79
+ today_activities = self .env ["res.partner" ].search (
80
+ [("activity_state" , "=" , "today" )]
81
+ )
82
+ self .assertEqual (len (today_activities ), 1 )
83
+ overdue_activities = self .env ["res.partner" ].search (
84
+ [("activity_state" , "=" , "overdue" )]
85
+ )
86
+ self .assertFalse (overdue_activities )
87
+
88
+ # After the activity is marked as done, the activity state is unmarked
55
89
self .act1 ._action_done ()
56
- self .assertEqual (self .act1 .state , "done" )
57
- result = res_partner ._read_progress_bar (** params )
58
- self .assertEqual (len (result ), 0 )
90
+ today_activities = self .env ["res.partner" ].search (
91
+ [("activity_state" , "=" , "today" )]
92
+ )
93
+ self .assertFalse (today_activities )
0 commit comments