2 * Copyright (c) 2014 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
8 package org.opendaylight.mdsal.binding.model.ri.generated.type.builder;
10 import static org.junit.Assert.assertEquals;
11 import static org.junit.Assert.assertFalse;
12 import static org.junit.Assert.assertNotNull;
13 import static org.junit.Assert.assertTrue;
15 import org.junit.Test;
16 import org.opendaylight.mdsal.binding.model.api.JavaTypeName;
17 import org.opendaylight.mdsal.binding.model.api.MethodSignature;
19 public class MethodSignatureBuilderImplTest {
22 public void testCreateNewInstance() {
23 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
24 assertNotNull(signatureBuilderImpl);
28 public void testSetAbstractMethod() {
29 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
30 signatureBuilderImpl.setAbstract(true);
31 final MethodSignature methodSignature = signatureBuilderImpl.toInstance(null);
32 assertTrue(methodSignature.isAbstract());
36 public void testAddParameterMethod() {
37 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
38 final CodegenGeneratedTypeBuilder ipAddressType = new CodegenGeneratedTypeBuilder(
39 JavaTypeName.create("org.opendaylight.yangtools.test", "IpAddress"));
40 signatureBuilderImpl.addParameter(ipAddressType, "ipAddress");
41 final MethodSignature methodSignature = signatureBuilderImpl.toInstance(null);
42 assertEquals("ipAddress", methodSignature.getParameters().get(0).getName());
46 public void testHashCodeEqualsToStringMethods() {
47 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
48 final MethodSignatureBuilderImpl signatureBuilderImpl2 = new MethodSignatureBuilderImpl("testMethod");
49 final MethodSignatureBuilderImpl signatureBuilderImpl3 = new MethodSignatureBuilderImpl("testMethod2");
50 final MethodSignatureBuilderImpl signatureBuilderImpl4 = new MethodSignatureBuilderImpl(null);
51 final MethodSignatureBuilderImpl signatureBuilderImpl5 = signatureBuilderImpl;
52 final MethodSignatureBuilderImpl signatureBuilderImpl6 = new MethodSignatureBuilderImpl("testMethod");
53 final CodegenGeneratedTypeBuilder returnType = new CodegenGeneratedTypeBuilder(
54 JavaTypeName.create("org.opendaylight.yangtools.test", "Address"));
55 signatureBuilderImpl6.setReturnType(returnType);
57 assertEquals(signatureBuilderImpl.hashCode(), signatureBuilderImpl2.hashCode());
59 assertTrue(signatureBuilderImpl.equals(signatureBuilderImpl2));
60 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl3));
61 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl4));
62 assertFalse(signatureBuilderImpl4.equals(signatureBuilderImpl));
63 assertTrue(signatureBuilderImpl.equals(signatureBuilderImpl5));
64 assertFalse(signatureBuilderImpl4.equals("test"));
65 assertFalse(signatureBuilderImpl4.equals(signatureBuilderImpl));
66 assertFalse(signatureBuilderImpl6.equals(signatureBuilderImpl));
67 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl6));
69 assertNotNull(signatureBuilderImpl.toString());