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.yangtools.binding.generator.util.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.yangtools.sal.binding.model.api.MethodSignature;
18 public class MethodSignatureBuilderImplTest {
21 public void testCreateNewInstance() {
22 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
23 assertNotNull(signatureBuilderImpl);
27 public void testSetAbstractMethod() {
28 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
29 signatureBuilderImpl.setAbstract(true);
30 final MethodSignature methodSignature = signatureBuilderImpl.toInstance(null);
31 assertTrue(methodSignature.isAbstract());
35 public void testAddParameterMethod() {
36 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
37 final GeneratedTypeBuilderImpl ipAddressType = new GeneratedTypeBuilderImpl("org.opendaylight.yangtools.test", "IpAddress");
38 signatureBuilderImpl.addParameter(ipAddressType, "ipAddress");
39 final MethodSignature methodSignature = signatureBuilderImpl.toInstance(null);
40 assertEquals("ipAddress", methodSignature.getParameters().get(0).getName());
44 public void testHashCodeEqualsToStringMethods() {
45 final MethodSignatureBuilderImpl signatureBuilderImpl = new MethodSignatureBuilderImpl("testMethod");
46 final MethodSignatureBuilderImpl signatureBuilderImpl2 = new MethodSignatureBuilderImpl("testMethod");
47 final MethodSignatureBuilderImpl signatureBuilderImpl3 = new MethodSignatureBuilderImpl("testMethod2");
48 final MethodSignatureBuilderImpl signatureBuilderImpl4 = new MethodSignatureBuilderImpl(null);
49 final MethodSignatureBuilderImpl signatureBuilderImpl5 = signatureBuilderImpl;
50 final MethodSignatureBuilderImpl signatureBuilderImpl6 = new MethodSignatureBuilderImpl("testMethod");
51 final GeneratedTypeBuilderImpl returnType = new GeneratedTypeBuilderImpl("org.opendaylight.yangtools.test", "Address");
52 signatureBuilderImpl6.setReturnType(returnType);
54 assertEquals(signatureBuilderImpl.hashCode(), signatureBuilderImpl2.hashCode());
56 assertTrue(signatureBuilderImpl.equals(signatureBuilderImpl2));
57 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl3));
58 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl4));
59 assertFalse(signatureBuilderImpl4.equals(signatureBuilderImpl));
60 assertTrue(signatureBuilderImpl.equals(signatureBuilderImpl5));
61 assertFalse(signatureBuilderImpl4.equals("test"));
62 assertFalse(signatureBuilderImpl4.equals(signatureBuilderImpl));
63 assertFalse(signatureBuilderImpl6.equals(signatureBuilderImpl));
64 assertFalse(signatureBuilderImpl.equals(signatureBuilderImpl6));
66 assertNotNull(signatureBuilderImpl.toString());