Added printing of status code by response classes. Close #8
This commit is contained in:
parent
7b3e4adfc8
commit
1fca084fc9
3 changed files with 37 additions and 11 deletions
11
README.md
11
README.md
|
@ -302,3 +302,14 @@ $ java -jar httpstatus-1.1.0.jar
|
||||||
226: IM Used
|
226: IM Used
|
||||||
...
|
...
|
||||||
```
|
```
|
||||||
|
You can also print status codes by [response classes](https://www.rfc-editor.org/rfc/rfc9110.html#name-status-codes):
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ java -jar httpstatus-1.1.0.jar 2xx
|
||||||
|
200: OK
|
||||||
|
201: Created
|
||||||
|
202: Accepted
|
||||||
|
203: Non-Authoritative Information
|
||||||
|
204: No Content
|
||||||
|
...
|
||||||
|
```
|
|
@ -100,9 +100,18 @@ public final class Reasons {
|
||||||
public static void main(final String... args) {
|
public static void main(final String... args) {
|
||||||
if (args.length >= 1) {
|
if (args.length >= 1) {
|
||||||
for (final String key : args) {
|
for (final String key : args) {
|
||||||
final String value = REASON_PHRASES.get(key);
|
if (key.endsWith("xx")) {
|
||||||
if (value != null) {
|
var cat = key.charAt(0);
|
||||||
System.out.println(key + ": " + value);
|
REASON_PHRASES.forEach((k, v) -> {
|
||||||
|
if (k.charAt(0) == cat) {
|
||||||
|
System.out.println(k + ": " + v);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
final String value = REASON_PHRASES.get(key);
|
||||||
|
if (value != null) {
|
||||||
|
System.out.println(key + ": " + value);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -71,28 +71,34 @@ class ReasonsMainTest {
|
||||||
@Test
|
@Test
|
||||||
void testMain() {
|
void testMain() {
|
||||||
Reasons.main("401");
|
Reasons.main("401");
|
||||||
assertThat(outContent.toString().contains(Reasons.getReasonPhrase("401"))).as("401").isTrue();
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase("401")).as("401");
|
||||||
assertThat(outContent.toString().contains("500")).as("401 no 500").isFalse();
|
assertThat(outContent.toString()).doesNotContain("500").as("401 no 500");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testMainAll() {
|
void testMainAll() {
|
||||||
Reasons.main();
|
Reasons.main();
|
||||||
assertThat(outContent.toString().contains(Reasons.getReasonPhrase(301))).as("301").isTrue();
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase(301)).as("301");
|
||||||
assertThat(outContent.toString().contains(Reasons.getReasonPhrase(404))).as("404").isTrue();
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase(404)).as("404");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testMainArgs() {
|
void testMainArgs() {
|
||||||
Reasons.main("500", "302");
|
Reasons.main("500", "302");
|
||||||
assertThat(outContent.toString().contains(Reasons.getReasonPhrase("500"))).as("500 (302)").isTrue();
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase("500")).as("500 (302)");
|
||||||
assertThat(outContent.toString().contains(Reasons.getReasonPhrase("302"))).as("(500) 302").isTrue();
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase("302")).as("(500) 302");
|
||||||
assertThat(outContent.toString().contains("404")).as("500/302 not 404").isFalse();
|
assertThat(outContent.toString()).doesNotContain("404").as("500/302 not 404");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void testMainArgsClass() {
|
||||||
|
Reasons.main("2xx");
|
||||||
|
assertThat(outContent.toString()).contains(Reasons.getReasonPhrase("200")).as("2xx");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testMainInvalid() {
|
void testMainInvalid() {
|
||||||
Reasons.main("aaa");
|
Reasons.main("aaa");
|
||||||
assertThat(outContent.toString().isEmpty()).as("invalid argument: aaa").isTrue();
|
assertThat(outContent.toString()).as("invalid argument: aaa").isEmpty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue