*/
package org.opendaylight.mdsal.binding.generator;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.hamcrest.Matchers.contains;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import static org.mockito.Mockito.mock;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableSet;
import com.google.common.collect.Range;
-import java.util.Collection;
+import java.util.List;
+import java.util.Optional;
+import java.util.Set;
import org.junit.Test;
import org.opendaylight.mdsal.binding.model.api.Restrictions;
-import org.opendaylight.mdsal.binding.spec.naming.BindingMapping;
import org.opendaylight.yangtools.yang.common.QName;
import org.opendaylight.yangtools.yang.model.api.ConstraintMetaDefinition;
-import org.opendaylight.yangtools.yang.model.api.Module;
import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
import org.opendaylight.yangtools.yang.model.api.stmt.ValueRange;
import org.opendaylight.yangtools.yang.model.api.type.DecimalTypeDefinition;
import org.opendaylight.yangtools.yang.model.ri.type.InvalidLengthConstraintException;
import org.opendaylight.yangtools.yang.model.ri.type.RestrictedTypes;
import org.opendaylight.yangtools.yang.model.ri.type.StringTypeBuilder;
-import org.opendaylight.yangtools.yang.test.util.YangParserTestUtils;
public class BindingGeneratorUtilTest {
private static final QName ROOT = QName.create("test", "root");
- /*
- * Tests methods:
- * <ul>
- * <li>moduleNamespaceToPackageName</li> - with revision
- * <li>packageNameForGeneratedType</li>
- * <ul>
- * <li>validateJavaPackage</li>
- * </ul>
- * <li>packageNameForTypeDefinition</li> <li>moduleNamespaceToPackageName</li>
- * - without revision </ul>
- */
- @Test
- public void testBindingGeneratorUtilMethods() {
- final Collection<? extends Module> modules = YangParserTestUtils.parseYangResources(
- BindingGeneratorUtilTest.class, "/module.yang").getModules();
- String packageName = "";
- Module module = null;
- for (Module m : modules) {
- module = m;
- break;
- }
- assertNotNull("Module can't be null", module);
-
- // test of the method moduleNamespaceToPackageName()
- packageName = BindingMapping.getRootPackageName(module.getQNameModule());
- assertEquals("Generated package name is incorrect.",
- "org.opendaylight.yang.gen.v1.urn.m.o.d.u.l.e.n.a.m.e.t.e.s.t._case._1digit.rev130910", packageName);
- }
-
- /*
- * Tests the methods:
- * <ul>
- * <li>parseToClassName</li>
- * <ul>
- * <li>parseToCamelCase</li>
- * <ul>
- * <li>replaceWithCamelCase</li>
- * </ul>
- * </ul> <li>parseToValidParamName</li>
- * <ul>
- * <li>parseToCamelCase</li>
- * <ul>
- * <li>replaceWithCamelCase</li>
- * </ul>
- * </ul>
- * <ul>
- */
- @Test
- public void testParsingMethods() {
- // getClassName method testing
- assertEquals("Class name has incorrect format", "SomeTestingClassName",
- BindingMapping.getClassName(" some-testing_class name "));
- assertEquals("Class name has incorrect format", "_0SomeTestingClassName",
- BindingMapping.getClassName(" 0 some-testing_class name "));
-
- // getPropertyName
- assertEquals("Parameter name has incorrect format", "someTestingParameterName",
- BindingMapping.getPropertyName(" some-testing_parameter name "));
- assertEquals("Parameter name has incorrect format", "_0someTestingParameterName",
- BindingMapping.getPropertyName(" 0some-testing_parameter name "));
- }
-
@Test
public void getRestrictionsTest() throws InvalidLengthConstraintException {
final PatternConstraint constraint = mock(PatternConstraint.class);
RestrictedTypes.newStringBuilder(BaseTypes.stringType(), ROOT);
builder.addPatternConstraint(constraint);
- builder.setLengthConstraint(mock(ConstraintMetaDefinition.class), ImmutableList.of(ValueRange.of(1, 2)));
+ builder.setLengthConstraint(mock(ConstraintMetaDefinition.class), List.of(ValueRange.of(1, 2)));
Restrictions restrictions = BindingGeneratorUtil.getRestrictions(builder.build());
assertNotNull(restrictions);
- assertEquals(ImmutableSet.of(Range.closed(1, 2)),
+ assertEquals(Set.of(Range.closed(1, 2)),
restrictions.getLengthConstraint().get().getAllowedRanges().asRanges());
assertFalse(restrictions.getRangeConstraint().isPresent());
assertEquals(1, restrictions.getPatternConstraints().size());
assertFalse(restrictions.isEmpty());
- assertTrue(restrictions.getPatternConstraints().contains(constraint));
+ assertThat(restrictions.getPatternConstraints(), contains(constraint));
}
@Test
assertFalse(restrictions.isEmpty());
assertEquals(((Int16TypeDefinition) type.getBaseType()).getRangeConstraint(),
restrictions.getRangeConstraint());
- assertFalse(restrictions.getLengthConstraint().isPresent());
- assertTrue(restrictions.getPatternConstraints().isEmpty());
+ assertEquals(Optional.empty(), restrictions.getLengthConstraint());
+ assertEquals(List.of(), restrictions.getPatternConstraints());
}
@Test
assertFalse(restrictions.isEmpty());
assertEquals(((Uint16TypeDefinition) type.getBaseType()).getRangeConstraint(),
restrictions.getRangeConstraint());
- assertFalse(restrictions.getLengthConstraint().isPresent());
- assertTrue(restrictions.getPatternConstraints().isEmpty());
+ assertEquals(Optional.empty(), restrictions.getLengthConstraint());
+ assertEquals(List.of(), restrictions.getPatternConstraints());
}
@Test
assertNotNull(restrictions);
assertFalse(restrictions.isEmpty());
assertEquals(base.getRangeConstraint(), restrictions.getRangeConstraint());
- assertFalse(restrictions.getLengthConstraint().isPresent());
- assertTrue(restrictions.getPatternConstraints().isEmpty());
+ assertEquals(Optional.empty(), restrictions.getLengthConstraint());
+ assertEquals(List.of(), restrictions.getPatternConstraints());
}
@Test