[B
- это то, что вы получаете, когда вызываете toString()
для массива byte
.
Таким образом, ваш тест не работает, так как он в основном говорит: «Верните ожидаемый результат, когда getMessage()
называется".Итак, он тестирует assertEquals (expected, expected);
Ваша проблема в коде, который читает байты XML из сокета, а затем преобразует их в строку, возвращаемую service.getMessage()
Так что ваш код долженвыглядеть так:
String expectedXmlContent = "<?xml version=\"1.0\" encoding=\"utf-8\" ?><some>£</some>";
byte[] data = expectedXmlContent.getBytes("UTF-8");
... send data to service as byte stream ...
assertEquals(expectedXmlContent, service.getMessage());
Также не смешивайте кодировки;если в XML указано «UTF-8», то вы должны использовать ту же кодировку в getBytes()
.