package org.opendaylight.mdsal.binding.javav2.generator.impl;
+import static org.junit.Assert.assertTrue;
import com.google.common.annotations.Beta;
-import java.io.BufferedReader;
import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
import java.net.URISyntaxException;
+import java.util.Iterator;
import java.util.Set;
import org.junit.Assert;
import org.junit.Before;
@Test
public void printYangSnippetForModule() throws Exception{
- for (final Module module : this.modules) {
- String originalFile;
- try {
- originalFile = readFile(this.getClass().getResourceAsStream(
- new StringBuilder("/yang-template/").append(module.getName()).append(".yang").toString()));
- } catch (final Exception e) {
- throw e;
- }
- final String moduleBody = yangTemplateForModule.render(module).body().trim();
- final String cleanedModuleBody = YangSnippetCleaner.clean(moduleBody);
- Assert.assertEquals(originalFile, cleanedModuleBody);
- }
- }
-
- private String readFile(final InputStream inputStream) throws IOException {
- final BufferedReader br = new BufferedReader(new InputStreamReader(inputStream));
- try {
- final StringBuilder sb = new StringBuilder();
- String line = br.readLine();
+ Iterator<Module> iterator = this.modules.iterator();
+ String moduleBody = yangTemplateForModule.render(iterator.next()).body().trim();
+ String cleanedModuleBody = YangSnippetCleaner.clean(moduleBody);
+ assertTrue(cleanedModuleBody.contains("yang-template-import"));
+ assertTrue(cleanedModuleBody.contains(" deviation /yti:yti-leaf {"));
+ assertTrue(cleanedModuleBody.contains(" default \"def\";"));
+ assertTrue(cleanedModuleBody.contains(" extension ext;"));
+ assertTrue(cleanedModuleBody.contains(" yti:ext;"));
+ assertTrue(cleanedModuleBody.contains(" yti:ext-arg \"arg\""));
- while (line != null) {
- sb.append(line);
- sb.append("\n");
- line = br.readLine();
- }
- return sb.toString();
- } finally {
- br.close();
- }
+ moduleBody = yangTemplateForModule.render(iterator.next()).body().trim();
+ cleanedModuleBody = YangSnippetCleaner.clean(moduleBody);
+ assertTrue(cleanedModuleBody.contains("module yang-template-test {"));
+ assertTrue(cleanedModuleBody
+ .contains(" import yang-template-import { prefix \"yti\"; revision-date 2016-06-23; }"));
+ assertTrue(cleanedModuleBody.contains(" anydata simple-anydata;"));
+ assertTrue(cleanedModuleBody.contains(" container simple-container-with-action {"));
+ assertTrue(cleanedModuleBody.contains(" leaf-list simple-leaf-list {"));
+ assertTrue(cleanedModuleBody.contains(" leaf-list simple-leaf-list-userordered {"));
+ assertTrue(cleanedModuleBody.contains(" list simple-list {"));
+ assertTrue(cleanedModuleBody.contains(" key \"simple-list-leaf-1\";"));
+ assertTrue(cleanedModuleBody.contains(" unique \"simple-list-leaf-2\";"));
+ assertTrue(cleanedModuleBody.contains(" action act {"));
+ assertTrue(cleanedModuleBody.contains(" list simple-list-more-arg-in-unique {"));
+ assertTrue(cleanedModuleBody.contains(" ordered-by user;"));
+ assertTrue(cleanedModuleBody.contains(" choice simple-choice {"));
+ assertTrue(cleanedModuleBody.contains(" anyxml simple-anyxml;"));
+ assertTrue(cleanedModuleBody.contains(" uses simple-grouping {"));
+ assertTrue(cleanedModuleBody.contains(" refine simple-grouping-leaf {"));
+ assertTrue(cleanedModuleBody.contains(" grouping simple-grouping {"));
+ assertTrue(cleanedModuleBody.contains(" augment \"/simple-container-uses\" {"));
+ assertTrue(cleanedModuleBody.contains(" extension simple-extension {"));
+ assertTrue(cleanedModuleBody.contains(" feature simple-feature {"));
+ assertTrue(cleanedModuleBody.contains(" identity simple-identity {"));
+ assertTrue(cleanedModuleBody.contains(" notification simple-notification {"));
+ assertTrue(cleanedModuleBody.contains(" rpc simple-rpc {"));
}
}