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.concepts;
11 import static org.junit.Assert.assertEquals;
12 import static org.junit.Assert.assertFalse;
13 import static org.junit.Assert.assertNotNull;
14 import static org.junit.Assert.assertTrue;
16 import org.junit.Test;
18 public class SemVerTest {
21 public void testSemVer() {
22 final SemVer semVer = SemVer.create(5);
23 assertNotNull(semVer);
25 assertEquals(5, semVer.getMajor());
26 assertEquals(0, semVer.getMinor());
27 assertEquals(0, semVer.getPatch());
29 final SemVer semVer2 = SemVer.valueOf("1.2.3");
30 assertNotNull(semVer2);
32 assertEquals(1, semVer2.getMajor());
33 assertEquals(2, semVer2.getMinor());
34 assertEquals(3, semVer2.getPatch());
36 final SemVer semVer3 = SemVer.valueOf("1");
37 assertNotNull(semVer3);
39 assertEquals(1, semVer3.getMajor());
40 assertEquals(0, semVer3.getMinor());
41 assertEquals(0, semVer3.getPatch());
43 final SemVer semVer4 = SemVer.valueOf("1.2");
44 assertNotNull(semVer4);
46 assertEquals(1, semVer4.getMajor());
47 assertEquals(2, semVer4.getMinor());
48 assertEquals(0, semVer4.getPatch());
50 assertEquals(1, semVer2.compareTo(semVer3));
51 assertEquals(-1, semVer3.compareTo(semVer2));
52 assertEquals(0, semVer2.compareTo(semVer2));
54 assertTrue(semVer2.equals(semVer2));
55 assertFalse(semVer2.equals("not equal"));
56 assertFalse(semVer2.equals(semVer3));
58 assertEquals(semVer2.hashCode(), semVer2.hashCode());
60 assertEquals("1.0.0", semVer3.toString());