@Override public void close() throws IOException { shutDown(); }
_seic = _closer.register(new StreamingKafkaSpecConsumer(config, _jobCatalog)); _seic.startAsync().awaitRunning(); List<Pair<SpecExecutor.Verb, Spec>> consumedEvent = _seic.changedSpecs().get(); Assert.assertTrue(consumedEvent.size() == 1, "Consumption did not match production");
@Test (dependsOnMethods = "testUpdateSpec") public void testDeleteSpec() throws Exception { // delete needs to be on a job spec that exists to get notification String deletedSpecUriString = "/foo/bar/addedSpec"; WriteResponse writeResponse = (WriteResponse) _seip.deleteSpec(new URI(deletedSpecUriString)).get(); log.info("WriteResponse: " + writeResponse); List<Pair<SpecExecutor.Verb, Spec>> consumedEvent = _seic.changedSpecs().get(); Assert.assertTrue(consumedEvent.size() == 1, "Consumption did not match production"); Map.Entry<SpecExecutor.Verb, Spec> consumedSpecAction = consumedEvent.get(0); Assert.assertTrue(consumedSpecAction.getKey().equals(SpecExecutor.Verb.DELETE), "Verb did not match"); Assert.assertTrue(consumedSpecAction.getValue().getUri().toString().equals(deletedSpecUriString), "Expected URI did not match"); Assert.assertTrue(consumedSpecAction.getValue() instanceof JobSpec, "Expected JobSpec"); }
@Test (dependsOnMethods = "testAddSpec") public void testUpdateSpec() throws Exception { // update is only treated as an update for existing job specs String updatedSpecUriString = "/foo/bar/addedSpec"; Spec spec = initJobSpec(updatedSpecUriString); WriteResponse writeResponse = (WriteResponse) _seip.updateSpec(spec).get(); log.info("WriteResponse: " + writeResponse); List<Pair<SpecExecutor.Verb, Spec>> consumedEvent = _seic.changedSpecs().get(); Assert.assertTrue(consumedEvent.size() == 1, "Consumption did not match production"); Map.Entry<SpecExecutor.Verb, Spec> consumedSpecAction = consumedEvent.get(0); Assert.assertTrue(consumedSpecAction.getKey().equals(SpecExecutor.Verb.UPDATE), "Verb did not match"); Assert.assertTrue(consumedSpecAction.getValue().getUri().toString().equals(updatedSpecUriString), "Expected URI did not match"); Assert.assertTrue(consumedSpecAction.getValue() instanceof JobSpec, "Expected JobSpec"); }
@Override public void close() throws IOException { shutDown(); }