Compare commits
No commits in common. "a60ada6c0887a320d43170be18edee42342bc973" and "8ef1fb9dd84dc3d89fe31995fdee0b118cf8eb52" have entirely different histories.
a60ada6c08
...
8ef1fb9dd8
4 changed files with 38 additions and 39 deletions
|
|
@ -1,37 +1,13 @@
|
||||||
|
name: "Build and Deploy artifact"
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
|
branches: [master, main]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
test:
|
build:
|
||||||
runs-on: docker
|
runs-on: docker
|
||||||
container:
|
container:
|
||||||
image: "git.lab0x13.site/scrow/bazel-java:0.12"
|
image: "git.lab0x13.site/scrow/bazel-java:0.12"
|
||||||
steps:
|
|
||||||
- uses: actions/checkout@v7
|
|
||||||
- uses: actions/cache@v6
|
|
||||||
with:
|
|
||||||
path: /var/cache/bazel
|
|
||||||
key: bazel-${{ env.FORGEJO_REPOSITORY }}
|
|
||||||
- id: run-tests
|
|
||||||
env:
|
|
||||||
CACHE_USERNAME: ${{ secrets.CACHE_USERNAME }}
|
|
||||||
CACHE_PASSWORD: ${{ secrets.CACHE_PASSWORD }}
|
|
||||||
run: |
|
|
||||||
bazel \
|
|
||||||
--output_user_root=/var/cache/bazel \
|
|
||||||
test
|
|
||||||
--remote_cache="https://${CACHE_USERNAME}:${CACHE_PASSWORD}@cache.lab0x13.site:443" \
|
|
||||||
--noremote_upload_local_results \
|
|
||||||
--noremote_cache_async \
|
|
||||||
//... --test_output=all
|
|
||||||
|
|
||||||
deploy:
|
|
||||||
needs: test
|
|
||||||
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/main'
|
|
||||||
runs-on: docker
|
|
||||||
container:
|
|
||||||
image: "git.lab0x13.site/scrow/bazel-java:0.12"
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v7
|
- uses: actions/checkout@v7
|
||||||
- uses: actions/cache@v6
|
- uses: actions/cache@v6
|
||||||
|
|
@ -53,4 +29,4 @@ jobs:
|
||||||
--remote_cache="https://${CACHE_USERNAME}:${CACHE_PASSWORD}@cache.lab0x13.site:443" \
|
--remote_cache="https://${CACHE_USERNAME}:${CACHE_PASSWORD}@cache.lab0x13.site:443" \
|
||||||
--remote_upload_local_results \
|
--remote_upload_local_results \
|
||||||
--noremote_cache_async
|
--noremote_cache_async
|
||||||
done
|
done
|
||||||
26
.forgejo/workflows/run-tests.yml
Normal file
26
.forgejo/workflows/run-tests.yml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: docker
|
||||||
|
container:
|
||||||
|
image: "git.lab0x13.site/scrow/bazel-java:0.12"
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v7
|
||||||
|
- uses: actions/cache@v6
|
||||||
|
with:
|
||||||
|
path: /var/cache/bazel
|
||||||
|
key: bazel-${{ env.FORGEJO_REPOSITORY }}
|
||||||
|
- id: run-tests
|
||||||
|
env:
|
||||||
|
CACHE_USERNAME: ${{ secrets.CACHE_USERNAME }}
|
||||||
|
CACHE_PASSWORD: ${{ secrets.CACHE_PASSWORD }}
|
||||||
|
run: |
|
||||||
|
bazel \
|
||||||
|
--output_user_root=/var/cache/bazel \
|
||||||
|
test
|
||||||
|
--remote_cache="https://${CACHE_USERNAME}:${CACHE_PASSWORD}@cache.lab0x13.site:443" \
|
||||||
|
--noremote_upload_local_results \
|
||||||
|
--noremote_cache_async \
|
||||||
|
//common/tests:site/lab0x13/scrow/commands/CommandHandlerTest --test_output=all --test_verbose_timeout_warnings
|
||||||
|
|
@ -13,7 +13,6 @@ import site.lab0x13.scrow.commands.model.literal.RootLiteral;
|
||||||
|
|
||||||
import java.io.ByteArrayOutputStream;
|
import java.io.ByteArrayOutputStream;
|
||||||
import java.io.PrintStream;
|
import java.io.PrintStream;
|
||||||
import java.nio.charset.StandardCharsets;
|
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
|
@ -57,7 +56,7 @@ class CommandHandlerTest {
|
||||||
|
|
||||||
@BeforeAll
|
@BeforeAll
|
||||||
static void init() {
|
static void init() {
|
||||||
System.setOut(new PrintStream(outContent, true, StandardCharsets.UTF_8));
|
System.setOut(new PrintStream(outContent));
|
||||||
}
|
}
|
||||||
|
|
||||||
@AfterAll
|
@AfterAll
|
||||||
|
|
@ -73,37 +72,37 @@ class CommandHandlerTest {
|
||||||
@Test
|
@Test
|
||||||
void testDefaultExecutor() {
|
void testDefaultExecutor() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of());
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of());
|
||||||
assertEquals("default executor\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("default executor\n", outContent.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testSubLiteralNoArgs() {
|
void testSubLiteralNoArgs() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("get", "foo"));
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("get", "foo"));
|
||||||
assertEquals("get executor: player=foo\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("get executor: player=foo\n", outContent.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testSubLiteralWithArgs() {
|
void testSubLiteralWithArgs() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set", "foo", "10"));
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set", "foo", "10"));
|
||||||
assertEquals("set executor: player=foo amount=10\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("set executor: player=foo amount=10\n", outContent.toString());
|
||||||
outContent.reset();
|
outContent.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testFailOnBadLiteral() {
|
void testFailOnBadLiteral() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("BAD_LITERAL"));
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("BAD_LITERAL"));
|
||||||
assertEquals("Unknown literal \"BAD_LITERAL\".\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("Unknown literal \"BAD_LITERAL\".\n", outContent.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testFailOnBadArgument() {
|
void testFailOnBadArgument() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set", "foo", "bar"));
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set", "foo", "bar"));
|
||||||
assertEquals("Not a number.\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("Not a number.\n", outContent.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testFailOnMissingArgument() {
|
void testFailOnMissingArgument() {
|
||||||
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set"));
|
commandHandler.invoke(rootLiteral, new CommandContextImpl(), Stream.of("set"));
|
||||||
assertEquals("Argument expected.\n", outContent.toString(StandardCharsets.UTF_8));
|
assertEquals("Argument expected.\n", outContent.toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package site.lab0x13.scrow.commands;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
|
import net.kyori.adventure.text.serializer.plain.PlainTextComponentSerializer;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class TestPlatform implements PlatformAdapter<CommandContextImpl> {
|
public class TestPlatform implements PlatformAdapter<CommandContextImpl> {
|
||||||
|
|
@ -13,7 +12,7 @@ public class TestPlatform implements PlatformAdapter<CommandContextImpl> {
|
||||||
private final List<String> permissions;
|
private final List<String> permissions;
|
||||||
|
|
||||||
public TestPlatform(List<String> permissions) {
|
public TestPlatform(List<String> permissions) {
|
||||||
this.permissions = new ArrayList<>(permissions);
|
this.permissions = permissions;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -24,6 +23,5 @@ public class TestPlatform implements PlatformAdapter<CommandContextImpl> {
|
||||||
@Override
|
@Override
|
||||||
public void sendMessage(CommandContextImpl ctx, Component message) {
|
public void sendMessage(CommandContextImpl ctx, Component message) {
|
||||||
System.out.println(plainText.serialize(message));
|
System.out.println(plainText.serialize(message));
|
||||||
System.out.flush();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue