diff options
author | Jon Marius Venstad <jonmv@users.noreply.github.com> | 2021-11-17 15:09:03 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-11-17 15:09:03 +0100 |
commit | e1955589f6f56337a669fe89ad22a68b349f3880 (patch) | |
tree | ece01b8ca55e5e855e4164f704e8d92ef308bbf0 /vespa-osgi-testrunner/src/test/java | |
parent | 69bd22c6dea4bae7d210a9ea36b31ecd8cd5c7fa (diff) |
Revert "Jonmv/vespa cli test runner"
Diffstat (limited to 'vespa-osgi-testrunner/src/test/java')
-rw-r--r-- | vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/TestRunnerHandlerTest.java | 57 |
1 files changed, 22 insertions, 35 deletions
diff --git a/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/TestRunnerHandlerTest.java b/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/TestRunnerHandlerTest.java index a78dc077446..0caac95ed34 100644 --- a/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/TestRunnerHandlerTest.java +++ b/vespa-osgi-testrunner/src/test/java/com/yahoo/vespa/testrunner/TestRunnerHandlerTest.java @@ -1,25 +1,24 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.testrunner; +import ai.vespa.hosted.api.TestDescriptor; import com.yahoo.container.jdisc.HttpRequest; import com.yahoo.container.jdisc.HttpResponse; import com.yahoo.test.json.JsonTestHelper; +import com.yahoo.vespa.testrunner.legacy.LegacyTestRunner; import org.junit.jupiter.api.BeforeAll; import org.junit.jupiter.api.Test; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.time.Instant; -import java.util.Collection; import java.util.List; import java.util.concurrent.Executors; import java.util.logging.Level; import java.util.logging.LogRecord; -import java.util.stream.Collectors; import static com.yahoo.jdisc.http.HttpRequest.Method.GET; -import static java.nio.charset.StandardCharsets.UTF_8; -import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.Assert.assertEquals; import static org.mockito.ArgumentMatchers.anyLong; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.when; @@ -48,7 +47,7 @@ public class TestRunnerHandlerTest { testRunnerHandler = new TestRunnerHandler( Executors.newSingleThreadExecutor(), - new MockJunitRunner(TestRunner.Status.SUCCESS, testReport), + new MockJunitRunner(LegacyTestRunner.Status.SUCCESS, testReport), null); } @@ -57,7 +56,7 @@ public class TestRunnerHandlerTest { HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/report", GET)); ByteArrayOutputStream out = new ByteArrayOutputStream(); response.render(out); - JsonTestHelper.assertJsonEquals(out.toString(UTF_8), "{\"summary\":{\"total\":10,\"success\":1,\"failed\":2,\"ignored\":3,\"aborted\":4,\"failures\":[{\"testName\":\"Foo.bar()\",\"testError\":\"org.junit.ComparisonFailure: expected:<foo> but was:<bar>\",\"exception\":\"java.lang.RuntimeException: org.junit.ComparisonFailure: expected:<foo> but was:<bar>\\n\\tat Foo.bar(Foo.java:1123)\\n\"}]},\"output\":[\"Tests started\"]}"); + JsonTestHelper.assertJsonEquals(new String(out.toByteArray()), "{\"summary\":{\"total\":10,\"success\":1,\"failed\":2,\"ignored\":3,\"aborted\":4,\"failures\":[{\"testName\":\"Foo.bar()\",\"testError\":\"org.junit.ComparisonFailure: expected:<foo> but was:<bar>\",\"exception\":\"java.lang.RuntimeException: org.junit.ComparisonFailure: expected:<foo> but was:<bar>\\n\\tat Foo.bar(Foo.java:1123)\\n\"}]},\"output\":[\"Tests started\"]}"); } @@ -66,18 +65,18 @@ public class TestRunnerHandlerTest { HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/log", GET)); ByteArrayOutputStream out = new ByteArrayOutputStream(); response.render(out); - JsonTestHelper.assertJsonEquals(out.toString(UTF_8), "{\"logRecords\":[{\"id\":0,\"at\":1598432151660,\"type\":\"info\",\"message\":\"Tests started\"}]}"); + JsonTestHelper.assertJsonEquals(new String(out.toByteArray()), "{\"logRecords\":[{\"id\":0,\"at\":1598432151660,\"type\":\"info\",\"message\":\"Tests started\"}]}"); // Should not get old log response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/log?after=0", GET)); out = new ByteArrayOutputStream(); response.render(out); - assertEquals("{\"logRecords\":[]}", out.toString(UTF_8)); + assertEquals("{\"logRecords\":[]}", new String(out.toByteArray())); } @Test - public void returnsEmptyResponsesWhenReportNotReady() throws IOException { + public void returnsEmptyLogWhenReportNotReady() throws IOException { TestRunner testRunner = mock(TestRunner.class); when(testRunner.isSupported()).thenReturn(true); when(testRunner.getReport()).thenReturn(null); @@ -85,26 +84,17 @@ public class TestRunnerHandlerTest { Executors.newSingleThreadExecutor(), testRunner, null); - { - HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/log", GET)); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - response.render(out); - assertEquals("{\"logRecords\":[]}", out.toString(UTF_8)); - } - - { - HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/report", GET)); - ByteArrayOutputStream out = new ByteArrayOutputStream(); - response.render(out); - assertEquals("", out.toString(UTF_8)); - } + HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/log", GET)); + ByteArrayOutputStream out = new ByteArrayOutputStream(); + response.render(out); + assertEquals("{\"logRecords\":[]}", new String(out.toByteArray())); } @Test public void usesLegacyTestRunnerWhenNotSupported() throws IOException { TestRunner testRunner = mock(TestRunner.class); when(testRunner.isSupported()).thenReturn(false); - TestRunner legacyTestRunner = mock(TestRunner.class); + LegacyTestRunner legacyTestRunner = mock(LegacyTestRunner.class); when(legacyTestRunner.getLog(anyLong())).thenReturn(List.of(logRecord("Legacy log message"))); testRunnerHandler = new TestRunnerHandler( @@ -114,7 +104,7 @@ public class TestRunnerHandlerTest { HttpResponse response = testRunnerHandler.handle(HttpRequest.createTestRequest("http://localhost:1234/tester/v1/log", GET)); ByteArrayOutputStream out = new ByteArrayOutputStream(); response.render(out); - JsonTestHelper.assertJsonEquals(out.toString(UTF_8), "{\"logRecords\":[{\"id\":0,\"at\":1598432151660,\"type\":\"info\",\"message\":\"Legacy log message\"}]}"); + JsonTestHelper.assertJsonEquals(new String(out.toByteArray()), "{\"logRecords\":[{\"id\":0,\"at\":1598432151660,\"type\":\"info\",\"message\":\"Legacy log message\"}]}"); } /* Creates a LogRecord that has a known instant and sequence number to get predictable serialization format */ @@ -127,23 +117,17 @@ public class TestRunnerHandlerTest { private static class MockJunitRunner implements TestRunner { - private final TestRunner.Status status; + private final LegacyTestRunner.Status status; private final TestReport testReport; - public MockJunitRunner(TestRunner.Status status, TestReport testReport) { + public MockJunitRunner(LegacyTestRunner.Status status, TestReport testReport) { this.status = status; this.testReport = testReport; } @Override - public void test(Suite suite, byte[] testConfig) { } - - @Override - public Collection<LogRecord> getLog(long after) { - return getReport().logLines().stream() - .filter(entry -> entry.getSequenceNumber() > after) - .collect(Collectors.toList()); + public void executeTests(TestDescriptor.TestCategory category, byte[] testConfig) { } @Override @@ -152,7 +136,7 @@ public class TestRunnerHandlerTest { } @Override - public TestRunner.Status getStatus() { + public LegacyTestRunner.Status getStatus() { return status; } @@ -161,6 +145,9 @@ public class TestRunnerHandlerTest { return testReport; } + @Override + public String getReportAsJson() { + return getReport().toJson(); + } } - } |