Пример #1
0
 def testTypeInfoNumberObjects(self):
   """Test the type info objects behave as expected."""
   a = type_info.Integer()
   self.assertRaises(type_info.TypeValueError, a.Validate, "1")
   self.assertRaises(type_info.TypeValueError, a.Validate, "hello")
   a.Validate(1231232)
   a.Validate(-2)
Пример #2
0
 def testTypeInfoListObjects(self):
   """Test List objects."""
   a = type_info.List(type_info.Integer())
   self.assertRaises(type_info.TypeValueError, a.Validate, 1)
   self.assertRaises(type_info.TypeValueError, a.Validate, "test")
   self.assertRaises(type_info.TypeValueError, a.Validate, None)
   self.assertRaises(type_info.TypeValueError, a.Validate, ["test"])
   self.assertRaises(type_info.TypeValueError, a.Validate, [
       rdfvalue.PathSpec()])
   a.Validate([1, 2, 3])
Пример #3
0
  def testTypeInfoMultiChoiceObjects(self):
    """Test MultiChoice objects."""
    a = type_info.MultiChoice(choices=["a", "b"])
    self.assertRaises(type_info.TypeValueError, a.Validate, "a")
    self.assertRaises(type_info.TypeValueError, a.Validate, ["test"])
    self.assertRaises(type_info.TypeValueError, a.Validate, ["a", "test"])
    self.assertRaises(type_info.TypeValueError, a.Validate, ["a", "a"])
    self.assertRaises(type_info.TypeValueError, a.Validate, None)
    self.assertRaises(type_info.TypeValueError, a.Validate, [1])
    self.assertRaises(type_info.TypeValueError, a.Validate, 1)
    a.Validate(["a"])
    a.Validate(["a", "b"])

    with self.assertRaises(type_info.TypeValueError):
      type_info.MultiChoice(choices=[1, 2])

    a = type_info.MultiChoice(choices=[1, 2], validator=type_info.Integer())
    self.assertRaises(type_info.TypeValueError, a.Validate, "a")
    self.assertRaises(type_info.TypeValueError, a.Validate, ["test"])
    a.Validate([2])
    a.Validate([1, 2])
Пример #4
0
def DEFINE_integer(name, default, help):
    """A helper for defining integer options."""
    CONFIG.AddOption(
        type_info.Integer(name=name, default=default, description=help))