Cleaned up Java Binding code from YANG Tools
[mdsal.git] / binding / mdsal-binding-generator-util / src / test / java / org / opendaylight / yangtools / binding / generator / util / generated / type / builder / GeneratedPropertyBuilderImplTest.java
1 /**
2  * Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
3  */
4 package org.opendaylight.yangtools.binding.generator.util.generated.type.builder;
5
6 import static org.junit.Assert.assertEquals;
7 import static org.junit.Assert.assertFalse;
8 import static org.junit.Assert.assertNotNull;
9 import static org.junit.Assert.assertTrue;
10 import org.junit.Test;
11 import org.opendaylight.yangtools.binding.generator.util.Types;
12 import org.opendaylight.yangtools.sal.binding.model.api.AccessModifier;
13 import org.opendaylight.yangtools.sal.binding.model.api.GeneratedProperty;
14
15 public class GeneratedPropertyBuilderImplTest {
16
17     @Test
18     public void generatedPropertyBuilderImplTest() {
19         GeneratedPropertyBuilderImpl generatedPropertyBuilderImpl = new GeneratedPropertyBuilderImpl("myPropertyName");
20         generatedPropertyBuilderImpl.setValue("myValue");
21         generatedPropertyBuilderImpl.setReadOnly(false);
22         generatedPropertyBuilderImpl.setStatic(true);
23         generatedPropertyBuilderImpl.setComment(null);
24         generatedPropertyBuilderImpl.setFinal(true);
25         generatedPropertyBuilderImpl.setAccessModifier(AccessModifier.PUBLIC);
26         generatedPropertyBuilderImpl.setReturnType(Types.BOOLEAN);
27
28         assertEquals(
29                 "GeneratedPropertyImpl [name=myPropertyName, annotations=[], comment=null, returnType=Type (java.lang.Boolean), isFinal=true, isReadOnly=false, modifier=PUBLIC]",
30                 generatedPropertyBuilderImpl.toString());
31
32         GeneratedProperty instance = generatedPropertyBuilderImpl.toInstance(null);
33
34         assertNotNull(instance);
35
36         assertTrue(instance.isFinal());
37         assertTrue(instance.isStatic());
38         assertFalse(instance.isReadOnly());
39         assertEquals("myValue", instance.getValue());
40         assertEquals(null, instance.getComment());
41         assertEquals(AccessModifier.PUBLIC, instance.getAccessModifier());
42         assertEquals(Types.BOOLEAN, instance.getReturnType());
43
44     }
45
46     @Test
47     public void generatedPropertyBuilderImplEqualsAndHashCodeTest() {
48         GeneratedPropertyBuilderImpl generatedPropertyBuilderImpl = new GeneratedPropertyBuilderImpl("myPropertyName");
49         GeneratedPropertyBuilderImpl generatedPropertyBuilderImpl2 = new GeneratedPropertyBuilderImpl("myPropertyName");
50         GeneratedPropertyBuilderImpl generatedPropertyBuilderImpl3 = new GeneratedPropertyBuilderImpl("myPropertyName3");
51         GeneratedPropertyBuilderImpl generatedPropertyBuilderImpl4 = new GeneratedPropertyBuilderImpl("myPropertyName");
52
53         assertNotNull(generatedPropertyBuilderImpl);
54         assertNotNull(generatedPropertyBuilderImpl2);
55         assertNotNull(generatedPropertyBuilderImpl3);
56         assertNotNull(generatedPropertyBuilderImpl4);
57
58         generatedPropertyBuilderImpl.setReturnType(Types.BOOLEAN);
59         generatedPropertyBuilderImpl2.setReturnType(Types.BOOLEAN);
60         generatedPropertyBuilderImpl3.setReturnType(Types.BOOLEAN);
61         generatedPropertyBuilderImpl4.setReturnType(Types.STRING);
62
63         assertFalse(generatedPropertyBuilderImpl.equals(null));
64         assertFalse(generatedPropertyBuilderImpl.equals(new Object()));
65         assertTrue(generatedPropertyBuilderImpl.equals(generatedPropertyBuilderImpl));
66         assertTrue(generatedPropertyBuilderImpl.equals(generatedPropertyBuilderImpl2));
67         assertFalse(generatedPropertyBuilderImpl.equals(generatedPropertyBuilderImpl3));
68         assertFalse(generatedPropertyBuilderImpl.equals(generatedPropertyBuilderImpl4));
69
70         assertTrue(generatedPropertyBuilderImpl.hashCode() == generatedPropertyBuilderImpl.hashCode());
71         assertTrue(generatedPropertyBuilderImpl.hashCode() == generatedPropertyBuilderImpl2.hashCode());
72         assertFalse(generatedPropertyBuilderImpl.hashCode() == generatedPropertyBuilderImpl3.hashCode());
73         assertFalse(generatedPropertyBuilderImpl.hashCode() == generatedPropertyBuilderImpl4.hashCode());
74     }
75
76 }