2 * Copyright (c) 2016 Cisco Systems, Inc. and others. All rights reserved.
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
9 package org.opendaylight.yangtools.yang.stmt;
11 import static org.junit.Assert.assertEquals;
12 import static org.junit.Assert.assertNotNull;
15 import java.io.FileNotFoundException;
16 import org.junit.Before;
17 import org.junit.Test;
18 import org.opendaylight.yangtools.yang.model.api.Module;
19 import org.opendaylight.yangtools.yang.parser.spi.meta.ReactorException;
20 import org.opendaylight.yangtools.yang.parser.util.NamedFileInputStream;
22 public class Bug5693Test {
24 private final String pathToModuleFoo = getClass().getResource("/bugs/bug5693/foo.yin").getPath();
28 * Use input stream to load Yin module.
31 public void initTest() throws FileNotFoundException, ReactorException {
32 foo = TestUtils.loadYinModule(new NamedFileInputStream(new File(pathToModuleFoo), pathToModuleFoo));
37 * Test presence of testing feature (parsed in the last phase), if it is present then parsing was successful.
38 * Meaning that stream was not closed after the first parsing phase.
41 public void bug5693Test() {
42 assertNotNull(foo.getFeatures());
43 assertEquals("Module should has exactly one feature", 1, foo.getFeatures().size());
44 assertEquals("Present feature should has expected local name", "test-input-stream-not-closed",
45 foo.getFeatures().iterator().next().getQName().getLocalName());