@Test
    public void testLackingDefaults() throws IOException {
        attemptLacking("bool_val", false);
        attemptLacking("int_val", false);
        attemptLacking("long_val", false);
        attemptLacking("double_val", false);
        attemptLacking("string_val", false);
        attemptLacking("enum_val", false);
        attemptLacking("refval", false);
        attemptLacking("fileVal", false);

        attemptLacking("boolarr", true);
        attemptLacking("intarr", true);
        attemptLacking("longarr", true);
        attemptLacking("doublearr", true);
        attemptLacking("enumarr", true);
        attemptLacking("stringarr", true);
        attemptLacking("refarr", true);
        attemptLacking("fileArr", true);
        attemptLacking("myarray", true);

        attemptLacking("basicStruct.bar", false);
        attemptLacking("rootStruct.inner0.index", false);
        attemptLacking("rootStruct.inner1.index", false);
//        attemptLacking("rootStruct.innerArr[0].stringVal", false);

        attemptLacking("myarray[0].stringval", true);
        attemptLacking("myarray[0].refval", false);
        attemptLacking("myarray[0].anotherarray", true);
        attemptLacking("myarray[0].anotherarray", true);
        attemptLacking("myarray[0].myStruct.a", false);
    }
Test most data types and features of the config client API,
e.g. parameter access, missing default values, and more.
<p/>
NOTE: this test does NOT test null default values.

@author gjoranv
config/src/test/java/com/yahoo/config/subscription/FunctionTest.java