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

Side by Side Diff: appengine/findit/model/crash/test/chrome_crash_analysis_test.py

Issue 2322133002: [Findit] Add cracas_crash_analysis (Closed)
Patch Set: Rebase. Created 4 years, 3 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 2016 The Chromium Authors. All rights reserved. 1 # Copyright 2016 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 from datetime import datetime 5 from datetime import datetime
6 import hashlib
7 import json
8
9 from google.appengine.ext import ndb
6 10
7 from crash.test.crash_testcase import CrashTestCase 11 from crash.test.crash_testcase import CrashTestCase
8 from model import analysis_status 12 from model import analysis_status
9 from model import result_status 13 from model import result_status
10 from model.crash.fracas_crash_analysis import FracasCrashAnalysis 14 from model.crash.chrome_crash_analysis import ChromeCrashAnalysis
11 15
12 16
13 class FracasCrashAnalysisTest(CrashTestCase): 17 class _MockChromeCrashAnalysis(ChromeCrashAnalysis):
18 """Mock ChromeCrashAnalysis class for testing purpose."""
19
20 @staticmethod
21 def _CreateKey(crash_identifiers):
22 return ndb.Key('_MockChromeCrashAnalysis', hashlib.sha1(
23 json.dumps(crash_identifiers, sort_keys=True)).hexdigest())
24
25
26 class ChromeCrashAnalysisTest(CrashTestCase):
14 27
15 def testDoNotUseIdentifiersToSetProperties(self): 28 def testDoNotUseIdentifiersToSetProperties(self):
16 crash_identifiers = { 29 crash_identifiers = {
17 'chrome_version': '1', 30 'chrome_version': '1',
18 'signature': 'signature/here', 31 'signature': 'signature/here',
19 'channel': 'canary', 32 'channel': 'canary',
20 'platform': 'win', 33 'platform': 'win',
21 'process_type': 'browser', 34 'process_type': 'browser',
22 } 35 }
23 FracasCrashAnalysis.Create(crash_identifiers).put() 36 _MockChromeCrashAnalysis.Create(crash_identifiers).put()
24 analysis = FracasCrashAnalysis.Get(crash_identifiers) 37 analysis = _MockChromeCrashAnalysis.Get(crash_identifiers)
25 self.assertIsNone(analysis.crashed_version) 38 self.assertIsNone(analysis.crashed_version)
26 self.assertIsNone(analysis.signature) 39 self.assertIsNone(analysis.signature)
27 self.assertIsNone(analysis.channel) 40 self.assertIsNone(analysis.channel)
28 self.assertIsNone(analysis.platform) 41 self.assertIsNone(analysis.platform)
29 42
30 def testFracasCrashAnalysisReset(self): 43 def testChromeCrashAnalysisReset(self):
31 analysis = FracasCrashAnalysis() 44 analysis = ChromeCrashAnalysis()
32 analysis.historical_metadata = {} 45 analysis.historical_metadata = {}
33 analysis.Reset() 46 analysis.Reset()
34 self.assertIsNone(analysis.channel) 47 self.assertIsNone(analysis.channel)
35 self.assertIsNone(analysis.historical_metadata) 48 self.assertIsNone(analysis.historical_metadata)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698