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

Side by Side Diff: appengine/chrome_infra_packages/cipd/test/impl_test.py

Issue 1194803002: Add a package listing API to cipd. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Created 5 years, 6 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
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import datetime 5 import datetime
6 import hashlib 6 import hashlib
7 import StringIO 7 import StringIO
8 import unittest 8 import unittest
9 import zipfile 9 import zipfile
10 10
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 64
65 class TestRepoService(testing.AppengineTestCase): 65 class TestRepoService(testing.AppengineTestCase):
66 maxDiff = None 66 maxDiff = None
67 67
68 def setUp(self): 68 def setUp(self):
69 super(TestRepoService, self).setUp() 69 super(TestRepoService, self).setUp()
70 self.mocked_cas_service = MockedCASService() 70 self.mocked_cas_service = MockedCASService()
71 self.mock(impl.cas, 'get_cas_service', lambda: self.mocked_cas_service) 71 self.mock(impl.cas, 'get_cas_service', lambda: self.mocked_cas_service)
72 self.service = impl.get_repo_service() 72 self.service = impl.get_repo_service()
73 73
74 def test_list_packages_no_prefix(self):
75 self.assertIsNone(self.service.get_package('a/b'))
76 self.assertIsNone(self.service.get_package('y/z'))
77 self.service.register_package(
78 package_name='y/z',
79 caller=auth.Identity.from_bytes('user:abc@example.com'),
80 now=datetime.datetime(2014, 1, 1, 0, 0))
81 self.service.register_package(
82 package_name='a/b',
83 caller=auth.Identity.from_bytes('user:abc@example.com'),
84 now=datetime.datetime(2014, 1, 1, 0, 0))
85 self.assertEqual(['a/b', 'y/z'], self.service.list_packages(''))
86
87 def test_list_packages_with_prefix(self):
88 self.assertIsNone(self.service.get_package('a/b'))
89 self.assertIsNone(self.service.get_package('y/z'))
90 self.service.register_package(
91 package_name='y/z',
92 caller=auth.Identity.from_bytes('user:abc@example.com'),
93 now=datetime.datetime(2014, 1, 1, 0, 0))
94 self.service.register_package(
95 package_name='a/b',
96 caller=auth.Identity.from_bytes('user:abc@example.com'),
97 now=datetime.datetime(2014, 1, 1, 0, 0))
98 self.assertEqual(['y/z'], self.service.list_packages('y'))
99
74 def test_register_package_new(self): 100 def test_register_package_new(self):
75 self.assertIsNone(self.service.get_package('a/b')) 101 self.assertIsNone(self.service.get_package('a/b'))
76 inst, registered = self.service.register_package( 102 inst, registered = self.service.register_package(
77 package_name='a/b', 103 package_name='a/b',
78 caller=auth.Identity.from_bytes('user:abc@example.com'), 104 caller=auth.Identity.from_bytes('user:abc@example.com'),
79 now=datetime.datetime(2014, 1, 1, 0, 0)) 105 now=datetime.datetime(2014, 1, 1, 0, 0))
80 self.assertTrue(registered) 106 self.assertTrue(registered)
81 self.assertEqual('a/b', inst.package_name) 107 self.assertEqual('a/b', inst.package_name)
82 self.assertEqual({ 108 self.assertEqual({
83 'registered_by': auth.Identity(kind='user', name='abc@example.com'), 109 'registered_by': auth.Identity(kind='user', name='abc@example.com'),
(...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
519 return True 545 return True
520 546
521 def run(self, instance, data): 547 def run(self, instance, data):
522 if self.error: 548 if self.error:
523 raise processing.ProcessingError(self.error) 549 raise processing.ProcessingError(self.error)
524 return { 550 return {
525 'instance_id': instance.instance_id, 551 'instance_id': instance.instance_id,
526 'package_name': instance.package_name, 552 'package_name': instance.package_name,
527 'processor_name': self.name, 553 'processor_name': self.name,
528 } 554 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698