@Test @Ignore public void test_performOperations_xml_success() throws PipelineException, ParserException { Mockito.when(xmlParser.parseFile(Mockito.anyString(), Mockito.anyMapOf(String.class, Object.class))) .thenReturn(new FileContents()); Extract extracts = new Extract(); extracts.setId("foo"); extracts.setLocation(""); extracts.setType(SupportedFileType.XML); UkubukaSchema ukubukaSchema = new UkubukaSchema(); ukubukaSchema.setExtracts(Arrays.asList(extracts)); ukubukaExtractor.performOperations(new HashMap<>(), ukubukaSchema); Mockito.verify(xmlParser, Mockito.times(1)).parseFile( Mockito.anyString(), Mockito.anyMapOf(String.class, Object.class)); }
@Ignore("long stress test") @Test // loads blocks from file and store them into disk DB public void prepareData() throws URISyntaxException, IOException { URL dataURL = ClassLoader.getSystemResource("blockstore/big_data.dmp"); File file = new File(dataURL.toURI()); BufferedReader reader = new BufferedReader(new FileReader(file)); String blockRLP; while(null != (blockRLP = reader.readLine())) { Block block = new Block( Hex.decode(blockRLP) ); blockSource.put(block.getHash(), block); if (block.getNumber() % 10000 == 0) logger.info( "adding block.hash: [{}] block.number: [{}]", block.getShortHash(), block.getNumber() ); } logger.info("total blocks loaded: {}", blockSource.size()); }
@Test @Ignore public void testExecuteReal() throws Exception { SearchConfiguration.set(SearchConfiguration.SERVER_HOST, "http://localhost:8983/solr/searchindex"); SearchServer server = SearchServer.getInstance(); FieldDescriptor<String> title = new FieldDescriptorBuilder() .setBoost(2) .setLanguage(Language.German).buildTextField("title"); DocumentFactory factory = new DocumentFactoryBuilder("asset") .addField(title) .build(); server.index(factory.createDoc("1").setValue(title, "Hello World")); server.commit(); assertEquals(1, server.execute(Search.fulltext(), factory).getNumOfResults()); }
@Test @Ignore public void testSendMailStatus() { String[] values = new String[] { "a", "b" }; SendMailStatus<String> mailStatus = new SendMailStatus<String>(); Assert.assertEquals(0, mailStatus.getMailStatus().size()); mailStatus.addMailStatus(values[0]); Assert.assertEquals(1, mailStatus.getMailStatus().size()); mailStatus.addMailStatus(values[1]); Assert.assertEquals(2, mailStatus.getMailStatus().size()); for (int i = 0; i < mailStatus.getMailStatus().size(); i++) { SendMailStatus.SendMailStatusItem<String> ms = mailStatus .getMailStatus().get(i); Assert.assertEquals(values[i], ms.getInstance()); Assert.assertNull(ms.getException()); Assert.assertFalse(ms.errorOccurred()); } }
@Test @Ignore("changing schema") public void testUnionDistinctDiffTypesAtPlanning() throws Exception { String query = "select count(c1) as ct from (select cast(r_regionkey as int) c1 from cp.`tpch/region.parquet`) \n" + "union \n" + "(select cast(r_regionkey as int) c2 from cp.`tpch/region.parquet`)"; testBuilder() .sqlQuery(query) .unOrdered() .baselineColumns("ct") .baselineValues((long) 5) .baselineValues((long) 0) .baselineValues((long) 1) .baselineValues((long) 2) .baselineValues((long) 3) .baselineValues((long) 4) .build() .run(); }
@Test @Ignore public void runPostString() throws IOException { String postBody = "" + "Releases\n" + "--------\n" + "\n" + " * _1.0_ May 6, 2013\n" + " * _1.1_ June 15, 2013\n" + " * _1.2_ August 11, 2013\n"; Request request = new Request.Builder() .url("https://localhost:8080/markdown") .post(RequestBody.create(MEDIA_TYPE_MARKDOWN, postBody)) .build(); Response response = client.newCall(request).execute(); if (!response.isSuccessful()) throw new IOException("Unexpected code " + response); System.out.println(response.body().string()); }
@Ignore @Test @SuppressWarnings({ "rawtypes", "unchecked" }) public void testBuilder_MyList() throws Exception { Builder<MyList> b1 = Builder.register(MyList.class); MyList list = new MyList(); list.add(new boolean[]{ true,false }); list.add(new int[]{ 1,2,3,4,5 }); list.add("String"); list.add(4); list.code = 4321; UnsafeByteArrayOutputStream os = new UnsafeByteArrayOutputStream(); b1.writeTo(list, os); byte[] b = os.toByteArray(); System.out.println(b.length+":"+Bytes.bytes2hex(b)); MyList result = b1.parseFrom(b); assertEquals(4, result.size()); assertEquals(result.code, 4321); assertEquals(result.id, "feedback"); }
@Ignore // FIXME : No!! This attempts a real connection! Furthermore the URL with // port is // hard-coded! Mock the connection - for real connection test create an // integration test // in the IT project! @Test public void validateCurrentUrl_ValidUrl() { // given brandBean.setBrandingUrl(WHITE_LABEL_PATH); // when brandBean.validateCurrentUrl(); // then assertEquals(1, facesMessages.size()); assertEquals(FacesMessage.SEVERITY_INFO, facesMessages.get(0) .getSeverity()); }
/** * Short Test, will be replaced later. * * @throws TrainModelsFailedException if the training operation failed * @throws PredictionFailedException if the prediction operation failed */ @Test @Ignore public void shortTest() throws TrainModelsFailedException, PredictionFailedException { CollaborativeFilteringDataset trainingData = (CollaborativeFilteringDataset) createDatasetOutOfFile( new CollaborativeFilteringParser(), getTestRessourcePathFor(MOVIELENS_DATASET_PATH)); MatrixFactorizationConfiguration config = new MatrixFactorizationConfiguration(); config.setStepSize(0.0001); MatrixFactorizationLearningAlgorithm algo = new MatrixFactorizationLearningAlgorithm(); MatrixFactorizationLearningModel model = algo.train(trainingData); Double result = model.predict(new CollaborativeFilteringInstance(1, 256, null, trainingData)); logger.debug(PREDICTION + result); result = model.predict(new CollaborativeFilteringInstance(1, 0, null, trainingData)); logger.debug(PREDICTION + result); logger.debug(model.toString()); }
@Ignore //TODO #POC9 @Test // rlp decode public void test_3() { // LogInfo{address=f2b1a404bcb6112a0ff2c4197cb02f3de40018b3, topics=[5a360139cff27713da0fe18a2100048a7ce1b7700c953a82bc3ff011437c8c2a 588d7ddcc06c14843ea68e690dfd4ec91ba09a8ada15c5b7fa6fead9c8befe4b ], data=} byte[] rlp = Hex.decode("f85a94f2b1a404bcb6112a0ff2c4197cb02f3de40018b3f842a05a360139cff27713da0fe18a2100048a7ce1b7700c953a82bc3ff011437c8c2aa0588d7ddcc06c14843ea68e690dfd4ec91ba09a8ada15c5b7fa6fead9c8befe4b80"); LogInfo logInfo = new LogInfo(rlp); assertEquals("f2b1a404bcb6112a0ff2c4197cb02f3de40018b3", Hex.toHexString(logInfo.getAddress())); assertEquals("00800000000000000010000000000000000000000000002000000000000000000012000000100000000050000020000000000000000000000000000000000000", logInfo.getBloom().toString()); assertEquals("f85a94f2b1a404bcb6112a0ff2c4197cb02f3de40018b3f842a05a360139cff27713da0fe18a2100048a7ce1b7700c953a82bc3ff011437c8c2aa0588d7ddcc06c14843ea68e690dfd4ec91ba09a8ada15c5b7fa6fead9c8befe4b80", Hex.toHexString(logInfo.getEncoded())); logger.info("{}", logInfo); }
/** * Servcie実行にGETを指定してXHR2ヘッダーのALLOW_ORIGINのみ返却されること. */ @Ignore @Test public final void Servcie実行にGETを指定してXHR2ヘッダーのALLOW_ORIGINのみ返却されること() { // TODO サービス実行が実装された後に対応すること try { // コレクションの作成 createServiceCollection(); TResponse response = Http.request("crossdomain/xhr2-preflight-no-access-control-allow-headers.txt") .with("path", "/testcell1/box1/servicecol/service") .with("token", PersoniumUnitConfig.getMasterToken()) .returns() .statusCode(HttpStatus.SC_METHOD_NOT_ALLOWED) .debug(); checkXHR2HeaderOnlyOrigin(response); } finally { // コレクションの削除 deleteServiceCollection(); } }
/** * Test that a BTree which forbid duplicate values does not accept them */ @Test(expected = DuplicateValueNotAllowedException.class) @Ignore("this condition is removed") public void testBTreeForbidDups() throws IOException, BTreeAlreadyManagedException { BTree<Long, String> singleValueBtree = BTreeFactory.createInMemoryBTree( "test2", LongSerializer.INSTANCE, StringSerializer.INSTANCE, BTree.FORBID_DUPLICATES ); for ( long i = 0; i < 64; i++ ) { singleValueBtree.insert( i, Long.toString( i ) ); } try { singleValueBtree.insert( 18L, "Duplicate" ); fail(); } finally { singleValueBtree.close(); } }
@Test @Ignore public void testJobDetails() throws Exception { TestSpacesStoragePlugin.setup(getCurrentDremioDaemon()); expectSuccess(getBuilder(getAPIv2().path("dataset/testA.dsA1/data").queryParam("limit", "10000")).buildGet(), JobDataFragment.class); List<Job> jobs = ImmutableList.copyOf(l(JobsService.class).getJobsForDataset(new DatasetPath("testA.dsA1").toNamespaceKey(), 100)); JobDetailsUI jobDetails = expectSuccess(getBuilder(getAPIv2().path("job/" + jobs.get(0).getJobId().getId() + "/details")).buildGet(), JobDetailsUI.class); assertNotNull(jobDetails); assertNotNull(jobs); assertTrue(jobs.size() > 0); waitForCompleteJobInIndex(jobs.get(0).getJobId()); jobDetails = expectSuccess(getBuilder(getAPIv2().path("job/" + jobs.get(0).getJobId().getId() + "/details")).buildGet(), JobDetailsUI.class); assertEquals(1, jobDetails.getTableDatasetProfiles().size()); assertEquals(500, (long) jobDetails.getOutputRecords()); assertEquals(9000, (long) jobDetails.getDataVolume()); }
@Test @Ignore public void testgetViewForOneStepRange() { MediatorSPARQLDerivation mediatorSPARQLDerivation = new MediatorSPARQLDerivation( C_ONTOLOGY_FURNITURE_TAXONOMY_V1_4_BIBA_OWL); LocalOntologyView helper = new LocalOntologyView(); String translationLabel = "http://www.semanticweb.org/ontologies/2013/4/Ontology1367568797694.owl#translation"; this.setLanguagelabel(translationLabel); Entity concept = new Entity(); concept.setUrl(getURIOfConcept("HighChair")); String label = translateConcept(concept.getUrl(), Language.SPANISH, this.getLanguagelabel()).getTranslation(); concept.setTranslatedURL(label); helper.setConcept(concept); LocalOntologyView result = mediatorSPARQLDerivation.getViewForOneStepRange(helper.getConcept().getUrl(), helper, null, Language.SPANISH); assertTrue(result.getDataproperties().size() > 0); System.out.println(result.getDataproperties()); System.out.println(result.getObjectproperties()); }
@Test @Ignore public void testPartitionCTAS() throws Exception { test("use dfs_test; " + "create table mytable1 partition by (r_regionkey, r_comment) as select r_regionkey, r_name, r_comment from cp.`tpch/region.parquet`"); test("use dfs_test; " + "create table mytable2 partition by (r_regionkey, r_comment) as select * from cp.`tpch/region.parquet` where r_name = 'abc' "); test("use dfs_test; " + "create table mytable3 partition by (r_regionkey, n_nationkey) as " + " select r.r_regionkey, r.r_name, n.n_nationkey, n.n_name from cp.`tpch/nation.parquet` n, cp.`tpch/region.parquet` r " + " where n.n_regionkey = r.r_regionkey"); test("use dfs_test; " + "create table mytable4 partition by (r_regionkey, r_comment) as " + " select r.* from cp.`tpch/nation.parquet` n, cp.`tpch/region.parquet` r " + " where n.n_regionkey = r.r_regionkey"); }
/** * Create some sort of horrible failure that is <em>not</em> a VirtualMachineError. */ @Ignore("TODO") @Test public void testError() throws CacheException, InterruptedException { // In this case we do NOT expect a failure String exceptions = Error.class.getName(); try { String name = "testError"; doCreateEntry(name); assertTrue(doVerifyConnected()); doMessage("<ExpectedException action=add>" + exceptions + "</ExpectedException>"); } finally { doMessage("<ExpectedException action=remove>" + exceptions + "</ExpectedException>"); // just in case resetVM(); } }
@Override public void testIgnored(Description description) throws Exception { if (working) { ignored.incrementAndGet(); Element testcase = createTestCase(description); Element skipped = xml.createElement("skipped"); skipped.setAttribute("message", safeString(description.getAnnotation(Ignore.class).value())); testcase.appendChild(skipped); testsuite.get().appendChild(testcase); writeXml(); } }
@Ignore("TODO: SHOULD FAIL ON RESOLUTION IF NOT FOUND ON FETCH GITHUB ISSUE#219") @Test public void resolveCategoryReferences_WithANonExistentCategoryReference_ShouldNotResolveReference() { final ProductSyncOptions productSyncOptions = ProductSyncOptionsBuilder.of(mock(SphereClient.class)) .build(); final CategoryService mockCategoryService = mockCategoryService(emptySet(), emptySet()); final ProductDraftBuilder productBuilder = getBuilderWithRandomProductTypeUuid() .categories(Collections.singleton(Category.referenceOfId("non-existent-category"))); final ProductReferenceResolver productReferenceResolver = new ProductReferenceResolver(productSyncOptions, getMockProductTypeService(PRODUCT_TYPE_ID), mockCategoryService, getMockTypeService(), getMockChannelService(getMockSupplyChannel(CHANNEL_ID, CHANNEL_KEY)), getMockTaxCategoryService(TAX_CATEGORY_ID), getMockStateService(STATE_ID), getMockProductService(PRODUCT_ID)); assertThat(productReferenceResolver.resolveCategoryReferences(productBuilder).toCompletableFuture()) .hasFailed() .hasFailedWithThrowableThat() .isExactlyInstanceOf(ReferenceResolutionException.class) .hasMessage("Failed to resolve reference 'category' on ProductDraft" + " with key:'" + productBuilder.getKey() + "'. Reason: Could not fetch Category with key."); }
/** * Runs a test module with one single class that has method with {@code Ignore} annotation. */ @Ignore("IDE-2270") @Test public void testModuleWithIgnoredMethod() { final IProject project = getProjectByName(PROJECT_NAME); assertTrue("Project is not accessible.", project.isAccessible()); final IFile module = project.getFile("test/X1.n4js"); assertTrue("Module is not accessible.", module.isAccessible()); runTestWaitResult(module); final String[] expected = { "X1#x12Test" }; final String[] actual = getConsoleContentLines(); assertArrayEquals(expected, actual); }
@Ignore @Test public void testTransactionFromSignedRLP() throws Exception { Transaction txSigned = new Transaction(Hex.decode(RLP_ENCODED_SIGNED_TX)); assertEquals(HASH_TX, Hex.toHexString(txSigned.getHash())); assertEquals(RLP_ENCODED_SIGNED_TX, Hex.toHexString(txSigned.getEncoded())); assertEquals(BigInteger.ZERO, new BigInteger(1, txSigned.getNonce())); assertEquals(new BigInteger(1, testGasPrice), new BigInteger(1, txSigned.getGasPrice())); assertEquals(new BigInteger(1, testGasLimit), new BigInteger(1, txSigned.getGasLimit())); assertEquals(Hex.toHexString(testReceiveAddress), Hex.toHexString(txSigned.getReceiveAddress())); assertEquals(new BigInteger(1, testValue), new BigInteger(1, txSigned.getValue())); assertNull(txSigned.getData()); assertEquals(27, txSigned.getSignature().v); assertEquals("eab47c1a49bf2fe5d40e01d313900e19ca485867d462fe06e139e3a536c6d4f4", Hex.toHexString(BigIntegers.asUnsignedByteArray(txSigned.getSignature().r))); assertEquals("14a569d327dcda4b29f74f93c0e9729d2f49ad726e703f9cd90dbb0fbf6649f1", Hex.toHexString(BigIntegers.asUnsignedByteArray(txSigned.getSignature().s))); }
@Test @Ignore public void testRegister() throws Exception { zookeeperRegistry.register(url); sleep(5000); }
/** * Right join is tricky because Drill's "join" operator only supports "left", so we have to flip inputs. */ @Test @Ignore public void testRightJoin() throws Exception { Join join = JdbcAssert.withModel(MODEL, "HR").sql("select * from emp right join dept on emp.deptId = dept.deptId") .returnsUnordered("xx").planContains(Join.class); Assert.assertEquals(JoinRelType.LEFT, join.getJoinType()); }
@Test @Ignore("Skipping as this creates a loop in the driver") public void testShouldReturnUnprepared() throws Exception { String message = "I'm not ready for this"; server.prime(when(query).then(unprepared(message))); thrown.expect(UnpreparedException.class); thrown.expectMessage(message); query(); }
/** * This test does the following :<br> * 1)Verify Entry value after faultin should be byte []<br> */ // not using it. added as may needed if functionality gets added @Ignore @Test public void testFaultInEntryValueShouldbeSerialized() { try { assertNotNull(cache); LocalRegion rgn = (LocalRegion) cache.getRegion(Region.SEPARATOR + regionName); assertNotNull(rgn); assertEquals("Region is not properly cleared ", 0, rgn.size()); assertTrue("Entry count not 0 ", new Long(0).equals(new Long(lifoStats.getCounter()))); // put eight entries into the region for (int i = 0; i < 8; i++) { rgn.put(new Long(i), new Long(i)); } // assert for value should be Byte Array // here value is not delivered to client and should be get deserialized // value in region should be serialized form assertTrue("FaultIn Value in not a byte Array ", rgn.get(new Long(6)) instanceof byte[]); } catch (Exception ex) { ex.printStackTrace(); fail("Test failed"); } }
/** * Test of removeListener method, of class SymbolicVariableList. */ @Ignore("test is difficult") @Test public void testRemoveListener() { System.out.println("removeListener"); VariableListListener listener = null; SymbolicVariableList instance = new SymbolicVariableList(); instance.removeListener(listener); // TODO review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }
@Ignore("Do we still need it? We don't get this version from Zk") @Test public void testGetModelVersionStatsNull() throws Exception { setupSuccessfullyConnectingPerServiceCache(true); setupGetVersionThrowsException(); testee.start(); Assert.assertEquals(RedirectorConstants.NO_MODEL_NODE_VERSION, testee.getModelVersion()); }
@Ignore("TODO:DARREL_DISABLE: test is disabled") @Test public void testAsyncPutAfterRoll() { DiskRegionProperties diskRegionProperties = new DiskRegionProperties(); diskRegionProperties.setDiskDirs(dirs); diskRegionProperties.setRolling(true); diskRegionProperties.setCompactionThreshold(100); region = DiskRegionHelperFactory.getAsyncPersistOnlyRegion(cache, diskRegionProperties); LocalRegion.ISSUE_CALLBACKS_TO_CACHE_OBSERVER = true; putAfterRoll(region); region.destroyRegion(); }
@Ignore(value = "To be reactivated in IIDM v1.1") @Test public void invalidMinQGreaterThanMaxQ() { thrown.expect(ValidationException.class); thrown.expectMessage("maximum reactive power is expected to be greater than or equal to minimum reactive power"); generator.newReactiveCapabilityCurve() .beginPoint() .setP(1.0f) .setMaxQ(5.0f) .setMinQ(50.0f) .endPoint() .add(); }
@Test @Ignore public void getDailySnapshot() throws Exception { DailySnapshot snapshot = new DailySnapshot(); Response resp = snapshot.getDailySnapshot("2016-12-12"); Assert.assertNotNull(resp); }
@Test @Category(FailsInCloudTest.class) @Ignore("Entry point isn't handled correctly") public void testOnHangDetected_Run_OffMainThread() { // Now that we're off the main thread, just call the other test. Futures.runAsync(this::testOnHangDetected_Run_OnMainThread).join(); }
@Ignore @Test public void _2refreshToken() throws Exception { LOGGER.info("Refreshing token"); GSON.toJson( BilibiliRESTAPI.refreshToken(), System.out ); }
/** * Test of entrenar method, of class BackpropagationBach. */ @Ignore @Test public void testEntrenar() { System.out.println("entrenar"); Feedforward net = null; double[][] input = null; double[][] output = null; int iteraciones = 0; Backpropagation instance = new Backpropagation(); instance.setEpoch(iteraciones); instance.entrenar(net, input, output); // TODO review the generated test code and remove the default call to fail. fail("The test case is a prototype."); }
@Test @Ignore public void compareImagesWithExpected() throws IOException { for (int bits = 2; bits <= 8; bits++) { BufferedImage expected = ImageIO.read( HilbertCurveRendererTest.class.getResourceAsStream("/expected/hilbert-2d-bits-" + bits + ".png")); BufferedImage b = HilbertCurveRenderer.render(bits, 800, Option.COLORIZE, Option.LABEL); assertTrue(distance(expected, b) < 100); } }
@Test @Ignore("Despite returning false for isSupported, invocation actually succeeds.") public void invokeOptionalNonPublic() throws Exception { SubClass2 subClass2 = new SubClass2(); assertFalse(NON_PUBLIC.isSupported(subClass2)); assertErrorOnInvokeOptional(NON_PUBLIC, subClass2); }
@Ignore // test in besDAO @Test(expected = ConfigurationException.class) public void testAuthenticateTMForInstance_EmptyUser() throws Throwable { Map<String, Setting> parameters = new HashMap<>(); parameters.put(InstanceParameter.BSS_USER, new Setting(InstanceParameter.BSS_USER, "")); createServiceInstance(ProvisioningStatus.COMPLETED, parameters); // identityService = new UserBase().mockIdentityService(); authenticateTMForInstance(CTRL_ID, "appInstanceId", defaultAuth); }
@Test @Ignore public void unionWithExtraPropertiesIsNewInlineType() { Api api = RamlLoader.load(this.getClass().getResourceAsStream("inline-types.raml"), "."); ObjectTypeDeclaration decl = RamlLoader.findTypes("foo", api.types()); TypeDeclaration property = findProperty(decl, "unionWithExtraProperty"); assertTrue(TypeDeclarationType.isNewInlineType(property)); }
@Test // (timeout=2000) @Ignore("Cache not implemented yet") public void twoIterators() { ExtendedForgeRockUserDao daoAdmin1 = new ExtendedForgeRockUserDao(IntegrationTestConfig.testInstance); IterableUserDao dao1 = daoAdmin1; for (ExtendedUser u1 : dao1) { for (ExtendedUser u2 : dao1) { System.out.println(u1.username() + "-" + u2.username()); } } assertEquals(6, daoAdmin1.requestsToServer()); }
@Ignore @Test public void shouldDisplayMoreInfoOnCommandLine() throws Exception { //given systemInMock.provideLines("info"); // when processMigrationToolRunner.run(new String[]{}); }
@Ignore("Ignored because a valid OAuth endpoint is not supplied") @Test public void testEventCollections() throws UnsupportedEncodingException { WebTarget target = ClientBuilder.newClient().register(JacksonJaxbJsonProvider.class).target("http://localhost:7001/sample"); String accessToken = requestAccessToken("tx-system-update"); Map<String, Object> response = target.path("account-events") //.path("5479-1234567") .request() .accept("application/hal+json") .header("X-Client-Version", "1.0.0") .header("X-Service-Generation", "1") .header("X-Log-Token", DiagnosticContext.getLogToken()) .header("Authorization", "Bearer " + accessToken) .get(Map.class); assertNotNull(response); assertNotNull(response.get("_links")); assertNotNull(response.get("_embedded")); Map<String, Object> embedded = (Map<String, Object>) response.get("_embedded"); assertTrue(((List) embedded.get("events")).size() >= 8); response = target.path("account-events").path("5479-1234567") .request() .accept("application/hal+json") .header("X-Client-Version", "1.0.0") .header("X-Service-Generation", "1") .header("X-Log-Token", DiagnosticContext.getLogToken()) .header("Authorization", "Bearer " + accessToken) .get(Map.class); assertNotNull(response); assertNotNull(response.get("_links")); assertNotNull(response.get("_embedded")); embedded = (Map<String, Object>) response.get("_embedded"); assertTrue(((List) embedded.get("events")).size() >= 6); }
@Ignore // TODO(jwilson): come up with a way to test unchecked exceptions on the writer thread. @Test public void peerConnectionCloseThrowingPropagates() throws IOException { client.closeThrows = true; server.webSocket.close(1000, "Bye from Server!"); client.processNextFrame(); client.listener.assertClosing(1000, "Bye from Server!"); client.webSocket.close(1000, "Bye from Client!"); server.processNextFrame(); server.listener.assertClosing(1000, "Bye from Client!"); }