def test_str_to_bool(self): assert str_to_bool("True") == True assert str_to_bool("False") == False assert str_to_bool("true") == True assert str_to_bool("false") == False assert str_to_bool("TRUE") == True assert str_to_bool("FALSE") == False assert str_to_bool("tRuE") == True assert str_to_bool("FaLSe") == False
def _set_modifier(self, unit_type, unit_name, modifier_name, value): unit = AST.get_or_create()[unit_type][unit_name] modifier_name = modifier_name.lower() if modifier_name in ("casegen", CASE_GEN_SYM): try: value = str_to_bool(value) unit.set_casegen(value) except ValueError: self.print_wrapper.write( "Invalid value for case generation modifier " + \ "(True or False)." ) return elif modifier_name in ("arg", ARG_SYM): unit.set_arg_value(value) elif modifier_name in ("randgen", RAND_GEN_SYM): try: value = str_to_bool(value) unit.set_randgen(value) except ValueError: self.print_wrapper.write( "Invalid value for random generation modifier " + \ "(True or False)." ) return elif modifier_name in "randgen-name": unit.set_randgen_name(modifier_name) elif modifier_name in ("randgen-percent", RAND_GEN_PERCENT_SYM): try: value = float(value) unit.set_randgen_percent(value) except ValueError: self.print_wrapper.write( "Invalid value for the random generation percentage " + \ "modifier (expected a float)." ) return else: self.print_wrapper.write( "Invalid modifier selected (can be 'casegen', " + \ "'randgen', 'randgen-name', 'randgen-percent' or 'arg')." ) return self.print_wrapper.write( "Modifier for " + unit_type.name + " '" + unit_name + \ "' successfully changed." )
def _set_modifier(self, parser, unit_type, unit_name, modifier_name, value): unit = parser.get_definition(unit_name, unit_type) modifier_name = modifier_name.lower() if modifier_name in ("casegen", CASE_GEN_SYM): try: value = str_to_bool(value) unit.modifiers.casegen = value except ValueError: self.print_wrapper.write("Invalid value for case generation " + "modifier (True or False).") return elif modifier_name in ("arg", ARG_SYM): unit.set_arg(value) else: self.print_wrapper.write("Invalid modifier selected (can be " + "'casegen' or 'arg').") return self.print_wrapper.write("Modifier for " + unit_type.name + " '" + unit_name + "' successfully changed.")
def test_not_bool(self): with pytest.raises(ValueError): str_to_bool("Test")