use of com.yahoo.config.codegen.DefParser in project vespa by vespa-engine.
the class ConfigFileFormatterTest method require_that_illegal_int_throws_exception.
// TODO: Reenable this when we can reenable typechecking.
@Ignore
@Test(expected = IllegalArgumentException.class)
public void require_that_illegal_int_throws_exception() throws IOException {
Slime slime = new Slime();
Cursor root = slime.setObject();
root.setString("intval", "invalid");
InnerCNode def = new DefParser("simpletypes", new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))).getTree();
new ConfigFileFormat(def).encode(new ByteArrayOutputStream(), slime);
}
use of com.yahoo.config.codegen.DefParser in project vespa by vespa-engine.
the class SuperModelController method getConfigDefinition.
private InnerCNode getConfigDefinition(ConfigKey<?> configKey, DefContent defContent) {
if (defContent.isEmpty()) {
ConfigDefinitionKey configDefinitionKey = new ConfigDefinitionKey(configKey.getName(), configKey.getNamespace());
ConfigDefinition configDefinition = configDefinitionRepo.getConfigDefinitions().get(configDefinitionKey);
if (configDefinition == null) {
throw new UnknownConfigDefinitionException("Unable to find config definition for '" + configKey.getNamespace() + "." + configKey.getName());
}
return configDefinition.getCNode();
} else {
DefParser dParser = new DefParser(configKey.getName(), new StringReader(defContent.asString()));
return dParser.getTree();
}
}
use of com.yahoo.config.codegen.DefParser in project vespa by vespa-engine.
the class ConfigFileFormatterTest method require_that_field_not_found_is_ignored.
@Test
public void require_that_field_not_found_is_ignored() throws IOException {
Slime slime = new Slime();
Cursor root = slime.setObject();
root.setString("nosuchfield", "bar");
InnerCNode def = new DefParser("simpletypes", new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))).getTree();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
new ConfigFileFormat(def).encode(baos, slime);
assertThat(baos.toString(), is(""));
}
use of com.yahoo.config.codegen.DefParser in project vespa by vespa-engine.
the class ConfigFileFormatterTest method require_that_illegal_boolean_becomes_false.
@Test
public void require_that_illegal_boolean_becomes_false() throws IOException {
Slime slime = new Slime();
Cursor root = slime.setObject();
root.setString("boolval", "invalid");
InnerCNode def = new DefParser("simpletypes", new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))).getTree();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
new ConfigFileFormat(def).encode(baos, slime);
assertThat(baos.toString(), is("boolval false\n"));
}
use of com.yahoo.config.codegen.DefParser in project vespa by vespa-engine.
the class ConfigFileFormatterTest method require_that_types_are_not_checked.
// TODO: Remove this when we can reenable typechecking.
@Test
public void require_that_types_are_not_checked() throws IOException {
Slime slime = new Slime();
Cursor root = slime.setObject();
root.setString("enumval", "null");
root.setString("intval", "null");
root.setString("longval", "null");
root.setString("boolval", "null");
root.setString("doubleval", "null");
InnerCNode def = new DefParser("simpletypes", new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))).getTree();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
new ConfigFileFormat(def).encode(baos, slime);
assertThat(baos.toString("UTF-8"), is("enumval null\nintval null\nlongval null\nboolval false\ndoubleval null\n"));
}
Aggregations