@Override public @Nonnull QuestionSettingsId generateQuestionSettingsId() { return new QuestionSettingsId(uuid()); }
@Override public @Nonnull QuestionSettingsId getQuestionSettingsId( String questionClassId, NetworkId networkId) { if (!hasQuestionSettingsId(questionClassId, networkId)) { throw new IllegalArgumentException( String.format("No ID assigned to non-configured questionClassId '%s'", questionClassId)); } return new QuestionSettingsId( CommonUtil.readFile(getQuestionSettingsIdPath(questionClassId, networkId))); }
@Override public @Nonnull QuestionSettingsId generateQuestionSettingsId() { return new QuestionSettingsId(uuid()); }
@Test public void testLoadQuestionSettingsMissing() throws IOException { NetworkId network = new NetworkId("network"); QuestionSettingsId questionSettingsId = new QuestionSettingsId("q1"); assertThat(_storage.loadQuestionSettings(network, questionSettingsId), nullValue()); }
@Test public void testStoreQuestionSettingsThenLoad() throws IOException { NetworkId network = new NetworkId("network"); QuestionSettingsId questionSettingsId = new QuestionSettingsId("q1"); String settings = "{}"; _storage.storeQuestionSettings(settings, network, questionSettingsId); assertThat(_storage.loadQuestionSettings(network, questionSettingsId), equalTo(settings)); }
@Test public void testGetAnswerMetadataAnalysisMissingQuestion() throws JsonProcessingException, FileNotFoundException { String networkName = "network1"; String snapshotName = "snapshot1"; String analysisName = "analysis1"; Question question = new TestQuestion(); String questionName = "question1"; _manager.initNetwork(networkName, null); _manager.configureAnalysis( networkName, true, analysisName, ImmutableMap.of(), ImmutableList.of(), null); NetworkId networkId = _idManager.getNetworkId(networkName); SnapshotId snapshotId = _idManager.generateSnapshotId(); _idManager.assignSnapshot(snapshotName, networkId, snapshotId); QuestionSettingsId questionSettingsId = new QuestionSettingsId("blah"); _idManager.assignQuestionSettingsId(question.getName(), networkId, questionSettingsId); _thrown.expect(IllegalArgumentException.class); _thrown.expectMessage(containsString(questionName)); _manager.getAnswerMetadata(networkName, snapshotName, questionName, null, analysisName); }
@Test public void testGetAnswerMetadataAnalysisMissingAnalysis() throws JsonProcessingException, FileNotFoundException { String networkName = "network1"; String snapshotName = "snapshot1"; String analysisName = "analysis1"; Question question = new TestQuestion(); String questionName = "question1"; _manager.initNetwork(networkName, null); NetworkId networkId = _idManager.getNetworkId(networkName); SnapshotId snapshotId = _idManager.generateSnapshotId(); _idManager.assignSnapshot(snapshotName, networkId, snapshotId); // the analysis id is not assigned, so the analysis is effectively missing QuestionSettingsId questionSettingsId = new QuestionSettingsId("blah"); _idManager.assignQuestionSettingsId(question.getName(), networkId, questionSettingsId); _thrown.expect(IllegalArgumentException.class); _thrown.expectMessage(containsString(analysisName)); _manager.getAnswerMetadata(networkName, snapshotName, questionName, null, analysisName); }
_idManager.assignSnapshot(snapshotName, networkId, snapshotId); QuestionId questionId = _idManager.getQuestionId(questionName, networkId, null); QuestionSettingsId questionSettingsId = new QuestionSettingsId("blah"); _idManager.assignQuestionSettingsId(question.getName(), networkId, questionSettingsId); AnswerId baseAnswerId =