Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -58,12 +58,6 @@
<version>6.0.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<version>3.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,18 +47,18 @@ void configBuilderTest() {

// With custom paths.
config = UraClientConfiguration.forBaseURL(baseURL)
.withInstantPath(instantPath)
.withStreamPath(streamPath)
.build();
.withInstantPath(instantPath)
.withStreamPath(streamPath)
.build();
assertEquals(baseURL, config.baseURL(), "Unexpected base URL");
assertEquals(instantPath, config.instantPath(), "Unexpected custom instant path");
assertEquals(streamPath, config.streamPath(), "Unexpected custom stream path");

// With timeouts. (#14)
config = UraClientConfiguration.forBaseURL(baseURL)
.withConnectTimeout(conTimeout)
.withTimeout(timeout)
.build();
.withConnectTimeout(conTimeout)
.withTimeout(timeout)
.build();
assertEquals(conTimeout, config.connectTimeout(), "Unexpected connection timeout value");
assertEquals(timeout, config.timeout(), "Unexpected timeout value");
}
Expand Down
425 changes: 206 additions & 219 deletions src/test/java/de/stklcode/pubtrans/ura/UraClientTest.java

Large diffs are not rendered by default.

146 changes: 65 additions & 81 deletions src/test/java/de/stklcode/pubtrans/ura/model/MessageTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,11 +23,9 @@
import java.util.ArrayList;
import java.util.List;

import static org.hamcrest.CoreMatchers.instanceOf;
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.Is.is;
import static org.junit.jupiter.api.Assertions.fail;
import static org.junit.jupiter.api.Assertions.*;

;

Check warning on line 28 in src/test/java/de/stklcode/pubtrans/ura/model/MessageTest.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Remove this empty statement.

See more on https://sonarcloud.io/project/issues?id=de.stklcode.pubtrans%3Ajuraclient&issues=AZ4lo_wEW4Q6haNC7YRn&open=AZ4lo_wEW4Q6haNC7YRn&pullRequest=95

/**
* Unit test for the {@link Message} model.
Expand All @@ -49,16 +47,16 @@
3,
"message text"
);
assertThat(message.stop().id(), is("sid"));
assertThat(message.stop().name(), is("name"));
assertThat(message.stop().indicator(), is("indicator"));
assertThat(message.stop().state(), is(1));
assertThat(message.stop().latitude(), is(2.345));
assertThat(message.stop().longitude(), is(6.789));
assertThat(message.uuid(), is("msg_uuid"));
assertThat(message.type(), is(1));
assertThat(message.priority(), is(3));
assertThat(message.text(), is("message text"));
assertEquals("sid", message.stop().id());
assertEquals("name", message.stop().name());
assertEquals("indicator", message.stop().indicator());
assertEquals(1, message.stop().state());
assertEquals(2.345, message.stop().latitude());
assertEquals(6.789, message.stop().longitude());
assertEquals("msg_uuid", message.uuid());
assertEquals(1, message.type());
assertEquals(3, message.priority());
assertEquals("message text", message.text());
}

@Test
Expand All @@ -77,80 +75,66 @@
raw.add(3);
raw.add("message text");

try {
Message message = Message.of(raw);
assertThat(message.stop().id(), is("stopId"));
assertThat(message.stop().name(), is("stopName"));
assertThat(message.stop().indicator(), is("stopIndicator"));
assertThat(message.stop().state(), is(9));
assertThat(message.stop().latitude(), is(8.765));
assertThat(message.stop().longitude(), is(43.21));
assertThat(message.uuid(), is("msg_uuid"));
assertThat(message.type(), is(1));
assertThat(message.priority(), is(3));
assertThat(message.text(), is("message text"));
} catch (IOException e) {
fail("Creation of Message from valid list failed: " + e.getMessage());
}
Message message = assertDoesNotThrow(() -> Message.of(raw), "Creation of Message from valid list failed");
assertEquals("stopId", message.stop().id());
assertEquals("stopName", message.stop().name());
assertEquals("stopIndicator", message.stop().indicator());
assertEquals(9, message.stop().state());
assertEquals(8.765, message.stop().latitude());
assertEquals(43.21, message.stop().longitude());
assertEquals("msg_uuid", message.uuid());
assertEquals(1, message.type());
assertEquals(3, message.priority());
assertEquals("message text", message.text());

/* Excess elements should be ignored */
raw.add("foo");
try {
Message message = Message.of(raw);
assertThat(message, is(notNullValue()));
raw.remove(11);
} catch (IOException e) {
fail("Creation of Message from valid list failed: " + e.getMessage());
}
assertNotNull(assertDoesNotThrow(() -> Message.of(raw), "Creation of Message from valid list failed"));
raw.remove(11);

/* Test exceptions on invalid data */
List<Serializable> invalid = new ArrayList<>(raw);
invalid.remove(7);
invalid.add(7, 123L);
try {
Message.of(invalid);
fail("Creation of Message with invalid UUID field successful");
} catch (Exception e) {
assertThat(e, is(instanceOf(IOException.class)));
}
var invalid1 = new ArrayList<>(raw);
invalid1.remove(7);
invalid1.add(7, 123L);
assertThrows(
IOException.class,
() -> Message.of(invalid1),
"Creation of Message with invalid UUID field successful"
);

invalid = new ArrayList<>(raw);
invalid.remove(8);
invalid.add(8, "abc");
try {
Message.of(invalid);
fail("Creation of Message with invalid type field successful");
} catch (Exception e) {
assertThat(e, is(instanceOf(IOException.class)));
}
var invalid2 = new ArrayList<>(raw);
invalid2.remove(8);
invalid2.add(8, "abc");
assertThrows(
IOException.class,
() -> Message.of(invalid2),
"Creation of Message with invalid type field successful"
);

invalid = new ArrayList<>(raw);
invalid.remove(9);
invalid.add(9, "xyz");
try {
Message.of(invalid);
fail("Creation of Message with invalid priority field successful");
} catch (Exception e) {
assertThat(e, is(instanceOf(IOException.class)));
}
var invalid3 = new ArrayList<>(raw);
invalid3.remove(9);
invalid3.add(9, "xyz");
assertThrows(
IOException.class,
() -> Message.of(invalid3),
"Creation of Message with invalid priority field successful"
);

invalid = new ArrayList<>(raw);
invalid.remove(10);
invalid.add(10, 1.23);
try {
Message.of(invalid);
fail("Creation of Message with invalid text field successful");
} catch (Exception e) {
assertThat(e, is(instanceOf(IOException.class)));
}
var invalid4 = new ArrayList<>(raw);
invalid4.remove(10);
invalid4.add(10, 1.23);
assertThrows(
IOException.class,
() -> Message.of(invalid4),
"Creation of Message with invalid text field successful"
);

invalid = new ArrayList<>(raw);
invalid.remove(10);
try {
Message.of(invalid);
fail("Creation of Message with too short list successful");
} catch (Exception e) {
assertThat(e, is(instanceOf(IOException.class)));
}
var invalid5 = new ArrayList<>(raw);
invalid5.remove(10);
assertThrows(
IOException.class,
() -> Message.of(invalid5),
"Creation of Message with too short list successful"
);
}
}
Loading