@Test public void shouldToString() { final String data = "a little bit of ascii"; buffer.putStringWithoutLengthAscii(INDEX, data); asciiSequenceView.wrap(buffer, INDEX, data.length()); assertThat(asciiSequenceView.toString(), is(data)); }
@Test public void shouldSubSequence() { final String data = "a little bit of ascii"; buffer.putStringWithoutLengthAscii(INDEX, data); asciiSequenceView.wrap(buffer, INDEX, data.length()); final AsciiSequenceView subSequenceView = asciiSequenceView.subSequence(2, 8); assertThat(subSequenceView.toString(), is("little")); }
@Test public void shouldReturnEmptyStringWhenBufferIsNull() { assertEquals(0, asciiSequenceView.length()); assertEquals("", asciiSequenceView.toString()); }
private void assertRequiredFieldsMessageFieldsAsViewDecoded( final Decoder decoder, final String currency, final String exchange, final String country) throws Exception { assertEquals(currency, getCurrencyFieldAsView(decoder).toString()); assertEquals(exchange, getExchangeFieldAsView(decoder).toString()); assertEquals(country, getCountryFieldAsView(decoder).toString()); }
@Test public void shouldDecodeDifferentFieldTypes() throws Exception { final Decoder decoder = (Decoder)fieldsMessage.getConstructor().newInstance(); decode(EG_FIELDS_MESSAGE, decoder); assertRequiredFieldsMessageFieldsDecoded(decoder, "GBP", "XLON", "GB"); final char[] gbp = "GBP".toCharArray(); final char[] xlon = "XLON".toCharArray(); final char[] gb = "GB".toCharArray(); assertArrayEquals(gbp, getOptionalCurrencyField(decoder)); assertArrayEquals(xlon, getOptionalExchangeField(decoder)); assertArrayEquals(gb, getOptionalCountryField(decoder)); assertEquals("GBP", getOptionalCurrencyFieldAsString(decoder)); assertEquals("XLON", getOptionalExchangeFieldAsString(decoder)); assertEquals("GB", getOptionalCountryFieldAsString(decoder)); assertEquals("GBP", getOptionalCurrencyFieldAsView(decoder).toString()); assertEquals("XLON", getOptionalExchangeFieldAsView(decoder).toString()); assertEquals("GB", getOptionalCountryFieldAsView(decoder).toString()); assertValid(decoder); }
@Test public void shouldBeAbleToExtractStringsAsAsciiSequenceViewFromStringFields() throws Exception { final Decoder decoder = decodeHeartbeat(NO_OPTIONAL_MESSAGE); final AsciiSequenceView actual = getAsciiSequenceView(decoder, "onBehalfOfCompID"); assertEquals("abc", actual.toString()); assertThrows(() -> getAsciiSequenceView(decoder, "testReqID"), IllegalArgumentException.class, "No value for optional field: TestReqID"); }