Пример #1
0
  public void testSendAndReceiveText() {
    connection.SendText("Hello");
    assertEquals(5, connection.BytesAvailableToReceive());
    assertEquals("Hello", connection.ReceiveText(5));

    // Test DelimiterByte with default value of 0
    connection.SendText("World");
    connection.Send1ByteNumber("0x0"); // send delimiter
    assertEquals(6, connection.BytesAvailableToReceive());
    assertEquals("World", connection.ReceiveText(-1));

    // Test DelimiterByte with value of 10 (line feed)
    connection.DelimiterByte(10);
    connection.SendText("Hello World");
    connection.Send1ByteNumber("13"); // send carriage return
    connection.Send1ByteNumber("10"); // send line feed
    assertEquals(13, connection.BytesAvailableToReceive());
    assertEquals("Hello World\r", connection.ReceiveText(-1));

    assertEquals(0, recordedErrorNumber);

    byte[] bytes = outputStream.toByteArray();
    assertEquals(24, bytes.length);
    int i = 0;
    assertEquals((byte) 72, bytes[i++]); // H
    assertEquals((byte) 101, bytes[i++]); // e
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 111, bytes[i++]); // o
    assertEquals((byte) 87, bytes[i++]); // W
    assertEquals((byte) 111, bytes[i++]); // o
    assertEquals((byte) 114, bytes[i++]); // r
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 100, bytes[i++]); // d
    assertEquals((byte) 0, bytes[i++]); // delimiter 0
    assertEquals((byte) 72, bytes[i++]); // H
    assertEquals((byte) 101, bytes[i++]); // e
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 111, bytes[i++]); // o
    assertEquals((byte) 32, bytes[i++]); // space
    assertEquals((byte) 87, bytes[i++]); // W
    assertEquals((byte) 111, bytes[i++]); // o
    assertEquals((byte) 114, bytes[i++]); // r
    assertEquals((byte) 108, bytes[i++]); // l
    assertEquals((byte) 100, bytes[i++]); // d
    assertEquals((byte) 13, bytes[i++]); // carriage return
    assertEquals((byte) 10, bytes[i++]); // line feed
  }
Пример #2
0
  public void testSendAndReceiveBytes() {
    List<Object> list = new ArrayList<Object>();
    list.add((byte) 0);
    list.add((short) 1);
    list.add(-1);
    list.add((long) 127);
    list.add((byte) -128);
    list.add((short) 255);
    list.add("0x0");
    list.add("0x1");
    list.add("0xFF");
    list.add("0xab");
    connection.SendBytes(YailList.makeList(list));
    assertEquals(0, recordedErrorNumber);
    assertEquals(10, connection.BytesAvailableToReceive());

    List<Integer> signedBytes = connection.ReceiveSignedBytes(5);
    assertEquals(0, signedBytes.get(0).intValue());
    assertEquals(1, signedBytes.get(1).intValue());
    assertEquals(-1, signedBytes.get(2).intValue());
    assertEquals(127, signedBytes.get(3).intValue());
    assertEquals(-128, signedBytes.get(4).intValue());
    List<Integer> unsignedBytes = connection.ReceiveUnsignedBytes(5);
    assertEquals(255, unsignedBytes.get(0).intValue());
    assertEquals(0x0, unsignedBytes.get(1).intValue());
    assertEquals(0x1, unsignedBytes.get(2).intValue());
    assertEquals(0xFF, unsignedBytes.get(3).intValue());
    assertEquals(0xab, unsignedBytes.get(4).intValue());

    assertEquals(0, recordedErrorNumber);

    list = new ArrayList<Object>();
    list.add("abc");
    connection.SendBytes(YailList.makeList(list));
    assertEquals(ErrorMessages.ERROR_BLUETOOTH_COULD_NOT_DECODE_ELEMENT, recordedErrorNumber);

    recordedErrorNumber = 0;
    list = new ArrayList<Object>();
    list.add("256");
    connection.SendBytes(YailList.makeList(list));
    assertEquals(ErrorMessages.ERROR_BLUETOOTH_COULD_NOT_FIT_ELEMENT_IN_BYTE, recordedErrorNumber);

    byte[] bytes = outputStream.toByteArray();
    assertEquals(10, bytes.length);
    int i = 0;
    assertEquals((byte) 0x00, bytes[i++]); // 0
    assertEquals((byte) 0x01, bytes[i++]); // 1
    assertEquals((byte) 0xFF, bytes[i++]); // -1
    assertEquals((byte) 0x7F, bytes[i++]); // 127
    assertEquals((byte) 0x80, bytes[i++]); // -128
    assertEquals((byte) 0xFF, bytes[i++]); // 255
    assertEquals((byte) 0x00, bytes[i++]); // 0x00
    assertEquals((byte) 0x01, bytes[i++]); // 0x01
    assertEquals((byte) 0xFF, bytes[i++]); // 0xFF
    assertEquals((byte) 0xAB, bytes[i++]); // 0xab
  }