diff options
Diffstat (limited to 'config-model/src/test/java/com/yahoo/schema/derived/SimpleInheritTestCase.java')
-rw-r--r-- | config-model/src/test/java/com/yahoo/schema/derived/SimpleInheritTestCase.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/config-model/src/test/java/com/yahoo/schema/derived/SimpleInheritTestCase.java b/config-model/src/test/java/com/yahoo/schema/derived/SimpleInheritTestCase.java new file mode 100644 index 00000000000..d8b39bfd978 --- /dev/null +++ b/config-model/src/test/java/com/yahoo/schema/derived/SimpleInheritTestCase.java @@ -0,0 +1,47 @@ +// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.schema.derived; + +import com.yahoo.schema.Schema; +import com.yahoo.schema.ApplicationBuilder; +import com.yahoo.schema.parser.ParseException; +import org.junit.Test; + +import java.io.File; +import java.io.IOException; + +/** + * Tests really simple inheriting + */ +public class SimpleInheritTestCase extends AbstractExportingTestCase { + + @Test + public void testEmptyChild() throws IOException, ParseException { + String name = "emptychild"; + final String expectedResultsDirName = "src/test/derived/" + name + "/"; + + ApplicationBuilder builder = new ApplicationBuilder(); + builder.addSchemaFile(expectedResultsDirName + "parent.sd"); + builder.addSchemaFile(expectedResultsDirName + "child.sd"); + builder.build(true); + + Schema schema = builder.getSchema("child"); + + String toDirName = "temp/" + name; + File toDir = new File(toDirName); + toDir.mkdirs(); + deleteContent(toDir); + + DerivedConfiguration config = new DerivedConfiguration(schema, builder.getRankProfileRegistry()); + config.export(toDirName); + + checkDir(toDirName, expectedResultsDirName); + } + + private void checkDir(String toDirName, String expectedResultsDirName) throws IOException { + File[] files = new File(expectedResultsDirName).listFiles(); + for (File file : files) { + if ( ! file.getName().endsWith(".cfg")) continue; + assertEqualFiles(file.getPath(), toDirName + "/" + file.getName(), false); + } + } +} |