Revert "Fix broken tests according to yangtools...
[mdsal.git] / binding2 / mdsal-binding2-java-api-generator / src / test / java / org / opendaylight / mdsal / binding / javav2 / java / api / generator / GeneratorJavaFileTest.java
1 /*
2  * Copyright (c) 2017 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.mdsal.binding.javav2.java.api.generator;
9
10 import java.io.BufferedReader;
11 import java.io.File;
12 import java.io.FileReader;
13 import java.io.IOException;
14 import java.util.ArrayList;
15 import java.util.List;
16 import org.junit.Assert;
17 import org.junit.Test;
18 import org.opendaylight.mdsal.binding.javav2.generator.api.BindingGenerator;
19 import org.opendaylight.mdsal.binding.javav2.generator.impl.BindingGeneratorImpl;
20 import org.opendaylight.mdsal.binding.javav2.model.api.Type;
21 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
22 import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
23 import org.sonatype.plexus.build.incremental.BuildContext;
24 import org.sonatype.plexus.build.incremental.DefaultBuildContext;
25
26 public class GeneratorJavaFileTest {
27
28     @Test
29     public void generatedFilesTest() throws Exception {
30         final SchemaContext context = YangParserTestUtils.parseYangSources("/base/with_import/");
31         final BindingGenerator bindingGenerator = new BindingGeneratorImpl(true);
32         final List<Type> types = bindingGenerator.generateTypes(context, context.getModules());
33         final BuildContext buildContext = new DefaultBuildContext();
34         final GeneratorJavaFile gjf = new GeneratorJavaFile(buildContext, types);
35         final File persistentSourcesDirectory =
36                 new File(GeneratorJavaFileTest.class.getResource("/base").getPath());
37         final File generatedSourcesDirectory =
38                 new File(GeneratorJavaFileTest.class.getResource("/base").getPath());
39         final List<File> generateToFile = gjf.generateToFile(generatedSourcesDirectory, persistentSourcesDirectory);
40         for (final File f : generateToFile) {
41             Assert.assertNotNull(f);
42         }
43         final List<String> files = new ArrayList<>();
44         for (final File file : generateToFile) {
45             BufferedReader br = null;
46             FileReader fr = null;
47             try {
48                 fr = new FileReader(file.getAbsolutePath());
49                 br = new BufferedReader(fr);
50                 final StringBuilder sb = new StringBuilder();
51                 String sCurrentLine;
52                 while ((sCurrentLine = br.readLine()) != null) {
53                     sb.append(sCurrentLine).append('\n');
54                 }
55                 files.add(sb.toString());
56             } catch (final IOException e) {
57                 e.printStackTrace();
58             } finally {
59                 try {
60                     if (br != null) {
61                         br.close();
62                     }
63                     if (fr != null) {
64                         fr.close();
65                     }
66                 } catch (final IOException ex) {
67                     ex.printStackTrace();
68                 }
69             }
70         }
71
72         for (final String s : files) {
73             Assert.assertNotNull(s);
74             Assert.assertTrue(!s.isEmpty());
75         }
76
77         for (final File file2 : generateToFile) {
78             file2.delete();
79         }
80     }
81 }