def test_both_present(self): info = {'condition': 'foo'} gclient_eval.UpdateCondition(info, 'and', 'bar') self.assertEqual(info, {'condition': '(foo) and (bar)'}) info = {'condition': 'foo'} gclient_eval.UpdateCondition(info, 'or', 'bar') self.assertEqual(info, {'condition': '(foo) or (bar)'})
def test_one_present_and(self): # If one of info's condition or new_condition is present, and |op| == 'and' # then the the result must be the present condition. info = {'condition': 'foo'} gclient_eval.UpdateCondition(info, 'and', None) self.assertEqual(info, {'condition': 'foo'}) info = {} gclient_eval.UpdateCondition(info, 'and', 'bar') self.assertEqual(info, {'condition': 'bar'})
def test_or(self): # If one of info's condition and new_condition is not present, then there # shouldn't be a condition. An absent value is treated as implicitly True. info = {'condition': 'foo'} gclient_eval.UpdateCondition(info, 'or', None) self.assertEqual(info, {}) info = {} gclient_eval.UpdateCondition(info, 'or', 'bar') self.assertEqual(info, {}) info = {} gclient_eval.UpdateCondition(info, 'or', None) self.assertEqual(info, {})
def test_both_absent_and(self): # Nothing happens info = {} gclient_eval.UpdateCondition(info, 'and', None) self.assertEqual(info, {})