Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(7)

Side by Side Diff: appengine/monorail/project/test/projectsummary_test.py

Issue 1868553004: Open Source Monorail (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Rebase Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 # Copyright 2016 The Chromium Authors. All rights reserved.
2 # Use of this source code is govered by a BSD-style
3 # license that can be found in the LICENSE file or at
4 # https://developers.google.com/open-source/licenses/bsd
5
6 """Unittests for Project Summary servlet."""
7
8 import unittest
9
10 from framework import permissions
11 from project import projectsummary
12 from proto import project_pb2
13 from services import service_manager
14 from testing import fake
15 from testing import testing_helpers
16
17
18 class ProjectSummaryTest(unittest.TestCase):
19
20 def setUp(self):
21 services = service_manager.Services(
22 project=fake.ProjectService(),
23 user=fake.UserService(),
24 project_star=fake.ProjectStarService())
25 self.project = services.project.TestAddProject(
26 'proj', project_id=123, summary='sum',
27 description='desc')
28 self.servlet = projectsummary.ProjectSummary(
29 'req', 'res', services=services)
30
31 def testGatherPageData(self):
32 mr = testing_helpers.MakeMonorailRequest(project=self.project)
33 page_data = self.servlet.GatherPageData(mr)
34 self.assertEqual(
35 '<p>desc</p>', page_data['formatted_project_description'])
36 self.assertEqual(
37 int(project_pb2.ProjectAccess.ANYONE), page_data['access_level'].key)
38 self.assertEqual(0, page_data['num_stars'])
39 self.assertEqual('s', page_data['plural'])
40
41 def testGatherHelpData(self):
42 mr = testing_helpers.MakeMonorailRequest(project=self.project)
43
44 # Non-members cannot edit project, so cue is not relevant.
45 mr.perms = permissions.READ_ONLY_PERMISSIONSET
46 help_data = self.servlet.GatherHelpData(mr, {})
47 self.assertEqual(None, help_data['cue'])
48
49 # Members (not owners) cannot edit project, so cue is not relevant.
50 mr.perms = permissions.READ_ONLY_PERMISSIONSET
51 help_data = self.servlet.GatherHelpData(mr, {})
52 self.assertEqual(None, help_data['cue'])
53
54 # This is a project member who has set up mailing lists and added
55 # members, but has not noted any duties.
56 mr = testing_helpers.MakeMonorailRequest(project=self.project)
57 self.project.issue_notify_address = 'example@domain.com'
58 self.project.committer_ids.extend([111L, 222L])
59 help_data = self.servlet.GatherHelpData(mr, {})
60 self.assertEqual('document_team_duties', help_data['cue'])
61
62 # Now he set up notes too.
63 project_commitments = project_pb2.ProjectCommitments()
64 project_commitments.project_id = self.project.project_id
65 project_commitments.commitments.append(
66 project_pb2.ProjectCommitments.MemberCommitment())
67 self.servlet.services.project.TestStoreProjectCommitments(
68 project_commitments)
69 help_data = self.servlet.GatherHelpData(mr, {})
70 self.assertEqual(None, help_data['cue'])
71
72
73 if __name__ == '__main__':
74 unittest.main()
OLDNEW
« no previous file with comments | « appengine/monorail/project/test/projectexport_test.py ('k') | appengine/monorail/project/test/projectupdates_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698