/** * Create and return a new test suite. * @param name the test suite name * @return the created test suite */ public static io.vertx.rxjava.ext.unit.TestSuite create(String name) { io.vertx.rxjava.ext.unit.TestSuite ret = io.vertx.rxjava.ext.unit.TestSuite.newInstance(io.vertx.ext.unit.TestSuite.create(name)); return ret; }
/** * Create and return a new test suite. * @param name the test suite name * @return the created test suite */ public static io.vertx.rxjava.ext.unit.TestSuite create(String name) { io.vertx.rxjava.ext.unit.TestSuite ret = io.vertx.rxjava.ext.unit.TestSuite.newInstance(io.vertx.ext.unit.TestSuite.create(name)); return ret; }
@Test public void testRepeatAllPass() throws Exception { AtomicInteger count = new AtomicInteger(); TestSuite suite = TestSuite.create("my_suite").test("my_test", 3, ctx -> { count.incrementAndGet(); }); TestReporter reporter = new TestReporter(); run(suite, reporter); reporter.await(); assertEquals(1, reporter.results.size()); assertEquals(0, reporter.exceptions.size()); assertEquals(1, reporter.results.size()); assertEquals(3, count.get()); assertEquals("my_test", reporter.results.get(0).name()); assertFalse(reporter.results.get(0).failed()); }
@org.junit.Test public void runTestError() { Throwable[] errors = {new IOException(),new RuntimeException(),new AssertionError()}; for (Throwable error : errors) { TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(new MySuite3(error)); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(MySuite3.class.getName(), reporter.name.get()); assertEquals(0, reporter.exceptions.size()); assertEquals(1, reporter.results.size()); assertEquals("testSomething", reporter.results.get(0).name()); assertTrue(reporter.results.get(0).failed()); assertSame(error, reporter.results.get(0).failure().cause()); } }
private void testSucceeded(Consumer<Completion> consumer) { TestSuite suite = TestSuite.create("my_suite").test("my_test", context -> { }); Completion completion = suite.run(Vertx.vertx()); consumer.accept(completion); assertTrue(completion.isCompleted()); assertTrue(completion.isSucceeded()); assertFalse(completion.isFailed()); }
@org.junit.Test public void runTest() { MySuite1 obj = new MySuite1(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(1, obj.count.get()); assertEquals(MySuite1.class.getName(), reporter.name.get()); assertEquals(0, reporter.exceptions.size()); assertEquals(1, reporter.results.size()); assertEquals("testSomething", reporter.results.get(0).name()); assertTrue(reporter.results.get(0).succeeded()); }
private void testAwaitFailed(Consumer<Completion> consumer) { TestSuite suite = TestSuite.create("my_suite").test("my_test", context -> { context.fail(); }); Completion completion = suite.run(Vertx.vertx()); consumer.accept(completion); assertTrue(completion.isCompleted()); assertFalse(completion.isSucceeded()); assertTrue(completion.isFailed()); }
@org.junit.Test public void testReportSucceededToCompletionHandler() { TestSuite suite = TestSuite.create("my_suite").test("first_test", context -> {}); suite.run(new TestOptions()).handler(ar -> { assertTrue(ar.succeeded()); testComplete(); }); await(); }
@org.junit.Test public void runTestFailure() { MySuite2 obj = new MySuite2(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(MySuite2.class.getName(), reporter.name.get()); assertEquals(0, reporter.exceptions.size()); assertEquals(1, reporter.results.size()); assertEquals("testSomething", reporter.results.get(0).name()); assertTrue(reporter.results.get(0).failed()); assertEquals("the_message", reporter.results.get(0).failure().message()); assertTrue(reporter.results.get(0).failure().cause() instanceof AssertionError); }
@org.junit.Test public void runAfterEach() { MySuite7 obj = new MySuite7(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(2, obj.count.get()); } }
@org.junit.Test public void runBeforeEach() { MySuite6 obj = new MySuite6(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(2, obj.count.get()); }
@org.junit.Test public void runAfter() { MySuite5 obj = new MySuite5(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(2, obj.count.get()); }
@org.junit.Test public void runBefore() { MySuite4 obj = new MySuite4(); TestSuiteImpl suite = (TestSuiteImpl) TestSuite.create(obj); TestReporter reporter = new TestReporter(); suite.runner().setReporter(reporter).run(); reporter.await(); assertEquals(2, obj.count.get()); }
private void testTimeout(Consumer<Completion> consumer) { TestSuite suite = TestSuite.create("my_suite").test("my_test", context -> { context.async(); }); Completion completion = suite.run(Vertx.vertx()); try { consumer.accept(completion); fail(); } catch (Exception e) { assertTrue(e instanceof TimeoutException); assertFalse(completion.isCompleted()); assertFalse(completion.isSucceeded()); assertFalse(completion.isFailed()); } }
private void connect(DoubleHandler<ILdapClientConnection, TestContext> handler) { TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.connect(config, connectionResult -> { context.assertTrue(connectionResult.isSuccess()); connection = connectionResult.getResult(); handler.handle(connection, context); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }
@Test public void shouldConnectSuccessfully() throws InterruptedException { config.setBindDn("uid=admin,ou=system"); config.setBindPassword("secret"); TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.connect(config, connectionResult -> { context.assertTrue(connectionResult.isSuccess()); connection = connectionResult.getResult(); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }
@Test public void shouldFailWhenUidInvalid() throws InterruptedException { config.setBindDn("uid=tacos,ou=system"); config.setBindPassword("secret"); TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.bind(config, result -> { if (result.isError()) result.getError().printStackTrace(System.out); context.assertTrue(result.isSuccess()); context.assertTrue(result.getResult().getResultCode().equals(LdapResultCode.INVALID_CREDENTIALS)); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }
@Test public void shouldFailWhenOuInvalid() throws InterruptedException { config.setBindDn("uid=admin,ou=tacos"); config.setBindPassword("secret"); TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.bind(config, result -> { if (result.isError()) result.getError().printStackTrace(System.out); context.assertTrue(result.isSuccess()); context.assertTrue(result.getResult().getResultCode().equals(LdapResultCode.INVALID_CREDENTIALS)); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }
@Test public void shouldErrorWhenFieldsInvalid() throws InterruptedException { config.setBindDn("x"); config.setBindPassword("x"); TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.bind(config, result -> { context.assertTrue(result.isSuccess()); context.assertTrue(result.getResult().getResultCode().equals(LdapResultCode.INVALID_DN_SYNTAX)); context.assertTrue(result.getResult().getMessage().equals("Incorrect DN given : x (0x78 ) is invalid")); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }
@Test public void shouldFailWhenPasswordInvalid() throws InterruptedException { config.setBindDn("uid=admin,ou=system"); config.setBindPassword("miso-soup"); TestCompletion completion = TestSuite.create("").test("", context -> { Async async = context.async(); ldapClientComponent.bind(config, result -> { context.assertTrue(result.isSuccess()); context.assertTrue(result.getResult().getResultCode().equals(LdapResultCode.INVALID_CREDENTIALS)); async.complete(); }); async.awaitSuccess(); }).run(); completion.awaitSuccess(); }