AnalysisContext { public static Builder builder(Revapi revapi) { return builder(revapi.getPipelineConfiguration()); } private  AnalysisContext(@Nonnull Locale locale, @Nullable ModelNode configuration, @Nonnull API oldApi,
            @Nonnull API newApi, @Nonnull Map<String, Object> data, Collection<Criticality> knownCriticalities,
            Map<DifferenceSeverity, Criticality> defaultSeverityMapping); static Builder builder(Revapi revapi); static Builder builder(PipelineConfiguration pipelineConfiguration); static Builder builder(); AnalysisContext copyWithConfiguration(ModelNode configuration); @Nonnull Locale getLocale(); @Nonnull ModelNode getConfiguration(); @Nonnull API getOldApi(); @Nonnull API getNewApi(); @Nullable Object getData(String key); @Nullable Criticality getCriticalityByName(String name); Criticality getDefaultCriticality(DifferenceSeverity severity);  }
@Test(expected = IllegalArgumentException.class) public void testConfigurationHandling_mergeNewStyle_singleMasterWithMultipleIdlessMergers() throws Exception { Dummy.schema = "{\"type\": \"object\", \"properties\": {\"a\": {\"type\": \"integer\"}," + " \"b\": {\"type\": \"array\", \"items\": {\"type\": \"string\"}}}}"; Dummy.extensionId = "ext"; ModelNode cfg1 = ModelNode.fromJSONString("[{\"extension\": \"ext\", \"configuration\": {\"a\": 1, \"b\": [\"x\"]}}]"); ModelNode cfg2 = ModelNode.fromJSONString("[{\"extension\": \"ext\", \"configuration\": {\"b\": [\"y\"]}}," + "{\"extension\": \"ext\", \"configuration\": {\"b\": [\"z\"]}}]"); Revapi revapi = Revapi.builder().withAnalyzers(Dummy.class).withReporters(TestReporter.class).build(); AnalysisContext.builder(revapi) .withConfiguration(cfg1) .mergeConfiguration(cfg2) .build(); }