From 43522be138b84d03ab3157314831e1f0464f84ac Mon Sep 17 00:00:00 2001 From: Jakub Toth Date: Tue, 11 Apr 2017 10:05:18 +0200 Subject: [PATCH] Fix unstable test YangTemplateTest in binding2. Change-Id: I035f9f6e7cb7be8ad4aa63609e9f5e28370908db Signed-off-by: Jakub Toth (cherry picked from commit 5b564dca1b289ba749e5806d4be202a5e87f6f48) --- .../generator/impl/YangTemplateTest.java | 69 ++++++++++--------- 1 file changed, 37 insertions(+), 32 deletions(-) diff --git a/binding2/mdsal-binding2-generator-impl/src/test/java/org/opendaylight/mdsal/binding/javav2/generator/impl/YangTemplateTest.java b/binding2/mdsal-binding2-generator-impl/src/test/java/org/opendaylight/mdsal/binding/javav2/generator/impl/YangTemplateTest.java index 9cde593a97..183d9917ab 100644 --- a/binding2/mdsal-binding2-generator-impl/src/test/java/org/opendaylight/mdsal/binding/javav2/generator/impl/YangTemplateTest.java +++ b/binding2/mdsal-binding2-generator-impl/src/test/java/org/opendaylight/mdsal/binding/javav2/generator/impl/YangTemplateTest.java @@ -8,13 +8,11 @@ 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; @@ -37,34 +35,41 @@ public class YangTemplateTest { @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 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 {")); } } -- 2.36.6