use of com.yahoo.config.codegen.InnerCNode 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.InnerCNode 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.InnerCNode 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"));
}
use of com.yahoo.config.codegen.InnerCNode in project vespa by vespa-engine.
the class ConfigFileFormatterTest method assertConfigFormat.
private void assertConfigFormat(Slime slime, String expected_simpletypes) throws IOException {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
InnerCNode def = new DefParser("simpletypes", new StringReader(StringUtilities.implode(SimpletypesConfig.CONFIG_DEF_SCHEMA, "\n"))).getTree();
new ConfigFileFormat(def).encode(baos, slime);
assertThat(baos.toString(), is(expected_simpletypes));
}
use of com.yahoo.config.codegen.InnerCNode in project vespa by vespa-engine.
the class DefaultValueApplierTest method apply.
public Slime apply(Slime slime, String... extraFields) {
StringBuilder defBuilder = new StringBuilder();
defBuilder.append("namespace=test").append("\n");
defBuilder.append("str string").append("\n");
for (String field : extraFields) {
defBuilder.append(field).append("\n");
}
Cursor cursor = slime.get();
cursor.setString("str", "myvalue");
InnerCNode def = new DefParser("simpletypes", new StringReader(defBuilder.toString())).getTree();
DefaultValueApplier applier = new DefaultValueApplier();
return applier.applyDefaults(slime, def);
}
Aggregations