| OLD | NEW |
| (Empty) | |
| 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 |
| 3 # found in the LICENSE file. |
| 4 |
| 5 import mock |
| 6 import unittest |
| 7 |
| 8 from google.appengine.api import users |
| 9 |
| 10 from model.base_triaged_model import TriagedModel |
| 11 from model.base_triaged_model import TriageResult |
| 12 |
| 13 |
| 14 class _DummyModel(TriagedModel): |
| 15 completed = True |
| 16 |
| 17 |
| 18 class TriagedModelTest(unittest.TestCase): |
| 19 |
| 20 def testUpdateTriageResult(self): |
| 21 triage_result = 1 |
| 22 suspect_info = 'abcd' |
| 23 user_name = 'test' |
| 24 |
| 25 model = _DummyModel() |
| 26 model.UpdateTriageResult(1, suspect_info, user_name) |
| 27 self.assertEqual(len(model.triage_history), 1) |
| 28 self.assertEqual(model.triage_history[0].triage_result, triage_result) |
| 29 self.assertEqual(model.triage_history[0].suspect_info, suspect_info) |
| 30 self.assertEqual(model.triage_history[0].user_name, user_name) |
| 31 |
| 32 @mock.patch.object(users, 'is_current_user_admin', return_value=True) |
| 33 def testGetTriageHistory(self, _): |
| 34 suspect_info = 'abcd' |
| 35 user_name = 'test' |
| 36 |
| 37 model = _DummyModel() |
| 38 result = TriageResult() |
| 39 result.triage_result = 1 |
| 40 result.user_name = user_name |
| 41 result.suspect_info = suspect_info |
| 42 model.triage_history.append(result) |
| 43 |
| 44 triage_history = TriagedModel.GetTriageHistory(model) |
| 45 |
| 46 # Because TriageResult's triage_time uses auto_now=True, a direct dict |
| 47 # comparison will always fail. Instead compare each relevant field |
| 48 # individually. |
| 49 self.assertEqual(len(triage_history), 1) |
| 50 self.assertEqual(triage_history[0].get('user_name'), user_name) |
| 51 self.assertEqual(triage_history[0].get('triage_result'), 'Incorrect') |
| 52 self.assertEqual(triage_history[0].get('suspect_info'), suspect_info) |
| 53 |
| OLD | NEW |