2 * Copyright (c) 2010-2020 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
7 * This program and the accompanying materials are made available under the
8 * terms of the Eclipse Public License 2.0 which is available at
9 * http://www.eclipse.org/legal/epl-2.0
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.modbus.e3dc.util;
15 import static org.junit.Assert.assertEquals;
17 import java.nio.ByteBuffer;
18 import java.util.BitSet;
20 import org.eclipse.jdt.annotation.NonNullByDefault;
21 import org.junit.Test;
22 import org.openhab.binding.modbus.e3dc.internal.dto.DataConverter;
25 * The {@link DataConverterTest} Test data conversions
27 * @author Bernd Weymann - Initial contribution
30 public class DataConverterTest {
33 public void testE3DCSwapValueNegative() {
34 // Reg 69 value 65098 bytes [-2, 74]
35 // Reg 70 value 65535 bytes [-1, -1]
36 byte[] b = new byte[] { -2, -74, -1, -1 };
37 assertEquals("Negative Value", -330, DataConverter.getInt32Swap(ByteBuffer.wrap(b)));
41 public void testBitset() {
42 byte[] b = new byte[] { 3, 16 };
43 BitSet s = BitSet.valueOf(b);
44 assertEquals("Bit0", true, s.get(0));
45 assertEquals("Bit1", true, s.get(1));
46 assertEquals("Bit2", false, s.get(2));
47 assertEquals("Bit3", false, s.get(3));
48 assertEquals("Bit4", false, s.get(4));
49 assertEquals("Bit5", false, s.get(5));
50 assertEquals("Bit6", false, s.get(6));
51 assertEquals("Bit7", false, s.get(7));
52 assertEquals("Bit8", false, s.get(8));
53 assertEquals("Bit9", false, s.get(9));
54 assertEquals("Bit10", false, s.get(10));
55 assertEquals("Bit11", false, s.get(11));
56 assertEquals("Bit12", true, s.get(12));
57 assertEquals("Bit13", false, s.get(13));
58 assertEquals("Bit14", false, s.get(14));
59 assertEquals("Bit15", false, s.get(15));