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

Side by Side Diff: Tools/GardeningServer/internal_alerts_test.py

Issue 643613002: Revert of Implemented retrieval of alerts history (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 6 years, 2 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
« no previous file with comments | « Tools/GardeningServer/internal_alerts.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 alerts
6 import internal_alerts 5 import internal_alerts
7 import json 6 import json
8 import random 7 import random
9 import string 8 import string
10 import unittest 9 import unittest
11 import webtest 10 import webtest
12 11
13 from google.appengine.api import memcache 12 from google.appengine.api import memcache
14 from google.appengine.ext import testbed 13 from google.appengine.ext import testbed
15 14
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 # Populate the cache with something valid 73 # Populate the cache with something valid
75 params = {'content': '{"alerts": "everything is OK"}'} 74 params = {'content': '{"alerts": "everything is OK"}'}
76 self.testapp.post('/internal-alerts', params) 75 self.testapp.post('/internal-alerts', params)
77 self.testapp.post('/internal-alerts', {'content': 'woozlwuzl'}, 76 self.testapp.post('/internal-alerts', {'content': 'woozlwuzl'},
78 status=400) 77 status=400)
79 res = self.testapp.get('/internal-alerts') 78 res = self.testapp.get('/internal-alerts')
80 self.check_json_headers(res) 79 self.check_json_headers(res)
81 internal_alerts = json.loads(res.body) 80 internal_alerts = json.loads(res.body)
82 self.assertEqual(internal_alerts['alerts'], 'everything is OK') 81 self.assertEqual(internal_alerts['alerts'], 'everything is OK')
83 82
84 def test_internal_alerts_stored_in_history_have_correct_type(self):
85 test_alerts1 = {'alerts': ['hello', 'world', '1']}
86 test_alerts2 = {'alerts': ['hello', 'world', '2']}
87 self.testapp.post('/internal-alerts',
88 {'content': json.dumps(test_alerts1)})
89 self.testapp.post('/internal-alerts',
90 {'content': json.dumps(test_alerts2)})
91 alerts_query = alerts.AlertsJSON.query().order(alerts.AlertsJSON.date)
92 stored_alerts = alerts_query.fetch(limit=3)
93 self.assertEqual(2, len(stored_alerts))
94 self.assertEqual(stored_alerts[0].type, 'internal-alerts')
95 self.assertEqual(stored_alerts[1].type, 'internal-alerts')
96
97 def test_internal_alerts_same_as_last_alerts_are_added_to_history(self):
98 test_alerts = {'alerts': ['hello', 'world']}
99 alerts.AlertsJSON(json=json.dumps(test_alerts), type='alerts').put()
100 self.testapp.post('/internal-alerts',
101 {'content': json.dumps(test_alerts)})
102 alerts_query = alerts.AlertsJSON.query()
103 self.assertEqual(2, alerts_query.count(limit=3))
104
105 def test_large_number_of_internal_alerts(self): 83 def test_large_number_of_internal_alerts(self):
106 self.user_helper('tester@google.com', '123') 84 self.user_helper('tester@google.com', '123')
107 # This generates ~2.5MB of JSON that compresses to ~750K. Real 85 # This generates ~2.5MB of JSON that compresses to ~750K. Real
108 # data compresses about 6x better. 86 # data compresses about 6x better.
109 random.seed(0xf00f00) 87 random.seed(0xf00f00)
110 put_internal_alerts = self.generate_fake_internal_alerts(4000) 88 put_internal_alerts = self.generate_fake_internal_alerts(4000)
111 89
112 params = {'content': json.dumps(put_internal_alerts)} 90 params = {'content': json.dumps(put_internal_alerts)}
113 self.testapp.post('/internal-alerts', params) 91 self.testapp.post('/internal-alerts', params)
114 92
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 159
182 def value(): 160 def value():
183 generators = [time, build, revision, test, literal_array, 161 generators = [time, build, revision, test, literal_array,
184 literal_map] 162 literal_map]
185 return random.choice(generators)() 163 return random.choice(generators)()
186 164
187 alert = {} 165 alert = {}
188 for _ in range(random.randint(6, 9)): 166 for _ in range(random.randint(6, 9)):
189 alert[label()] = value() 167 alert[label()] = value()
190 return alert 168 return alert
OLDNEW
« no previous file with comments | « Tools/GardeningServer/internal_alerts.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698