From b6977d2f7ce64ece732ac1a1a0525dac972d7ccf Mon Sep 17 00:00:00 2001 From: Jim Hahn Date: Wed, 17 Feb 2021 15:23:38 -0500 Subject: Fix sonars in apex-pdp Addressed the following issues: - initialize mocks before use - use parameterized queries - Random() is not secure - provide parameterized type for generics - unused imports - constructor visibility - use compute() instead of containsKey()/put() - make final fields static - rename constants to all upper case - no assert() in Thread.run() methods - nested try - nested if/else - too many break/continue - use try-with-resources - repeatable annotations - overlapping characters in reg ex - hashcode is not sufficient in compareTo() - need equals() with compareTo() - make class an interface - use parameterized test - multiple calls in assert() - log or re-throw - use different type of lambda - use parameterized logging - use StringBuilder instead of concatenation - use StandardCharsets.UTF_8 Issue-ID: POLICY-2906 Change-Id: I2cf8c885e3e22c2c6cbe6403a34906928afad022 Signed-off-by: Jim Hahn --- .../model/generator/model2cli/Model2CliTest.java | 20 +++-------- .../model2event/Model2EventSchemaTest.java | 39 ++++++---------------- .../generator/model2event/Model2EventTest.java | 23 +++---------- 3 files changed, 20 insertions(+), 62 deletions(-) (limited to 'tools/model-generator/src') diff --git a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java index 24a9f60ce..56c4197ea 100644 --- a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java +++ b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2cli/Model2CliTest.java @@ -2,6 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2018 Ericsson. All rights reserved. * Modifications Copyright (C) 2020 Nordix Foundation. + * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +22,7 @@ package org.onap.policy.apex.tools.model.generator.model2cli; +import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; import static org.junit.Assert.assertTrue; @@ -52,29 +54,17 @@ public class Model2CliTest { @Test public void testModel2CliBadOptions() { - final String[] cliArgs = {"-zabbu"}; - - final String outputString = runModel2Cli(cliArgs); - - assertTrue(outputString.contains("usage: gen-model2cli")); + assertThat(runModel2Cli(new String[] {"-zabbu"})).contains("usage: gen-model2cli"); } @Test public void testModel2CliHelp() { - final String[] cliArgs = {"-h"}; - - final String outputString = runModel2Cli(cliArgs); - - assertTrue(outputString.contains("usage: gen-model2cli")); + assertThat(runModel2Cli(new String[] {"-h"})).contains("usage: gen-model2cli"); } @Test public void testModel2CliVersion() { - final String[] cliArgs = {"-v"}; - - final String outputString = runModel2Cli(cliArgs); - - assertTrue(outputString.contains("gen-model2cli")); + assertThat(runModel2Cli(new String[] {"-v"})).contains("gen-model2cli").doesNotContain("usage:"); } @Test diff --git a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventSchemaTest.java b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventSchemaTest.java index 552101f94..9c7eccd0f 100644 --- a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventSchemaTest.java +++ b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventSchemaTest.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2019 Nordix Foundation. + * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +34,7 @@ import org.junit.Test; import org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters; import org.onap.policy.apex.context.parameters.ContextParameterConstants; import org.onap.policy.apex.context.parameters.SchemaParameters; +import org.onap.policy.apex.model.basicmodel.concepts.ApexException; import org.onap.policy.apex.model.basicmodel.service.ModelService; import org.onap.policy.common.parameters.ParameterService; import org.stringtemplate.v4.STGroupFile; @@ -81,36 +83,15 @@ public class Model2EventSchemaTest { } @Test - public void testEventSchemaStimuli() { + public void testEventSchemaStimuli() throws ApexException { modelFile = "src/test/resources/SmallModel.json"; - type = "stimuli"; - Model2JsonEventSchema app = new Model2JsonEventSchema(modelFile, type, APP_NAME); - assertThatCode(() -> { - int ret = app.runApp(); - assertEquals(0, ret); - }).doesNotThrowAnyException(); - } - - @Test - public void testEventSchemaResponse() { - modelFile = "src/test/resources/SmallModel.json"; - type = "response"; - Model2JsonEventSchema app = new Model2JsonEventSchema(modelFile, type, APP_NAME); - assertThatCode(() -> { - int ret = app.runApp(); - assertEquals(0, ret); - }).doesNotThrowAnyException(); - } - @Test - public void testEventSchemaInternal() { - modelFile = "src/test/resources/SmallModel.json"; - type = "internal"; - Model2JsonEventSchema app = new Model2JsonEventSchema(modelFile, type, APP_NAME); - assertThatCode(() -> { - int ret = app.runApp(); - assertEquals(0, ret); - }).doesNotThrowAnyException(); + String[] types = {"stimuli", "response", "internal"}; + for (String type2: types) { + type = type2; + Model2JsonEventSchema app = new Model2JsonEventSchema(modelFile, type, APP_NAME); + assertEquals(type, 0, app.runApp()); + } } @Test @@ -139,4 +120,4 @@ public class Model2EventSchemaTest { ParameterService.deregister(ContextParameterConstants.SCHEMA_GROUP_NAME); ModelService.clear(); } -} \ No newline at end of file +} diff --git a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventTest.java b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventTest.java index 5e2b05124..c9180607e 100644 --- a/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventTest.java +++ b/tools/model-generator/src/test/java/org/onap/policy/apex/tools/model/generator/model2event/Model2EventTest.java @@ -2,6 +2,7 @@ * ============LICENSE_START======================================================= * Copyright (C) 2018 Ericsson. All rights reserved. * Modifications Copyright (C) 2020 Nordix Foundation + * Modifications Copyright (C) 2021 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -21,6 +22,7 @@ package org.onap.policy.apex.tools.model.generator.model2event; +import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; import static org.junit.Assert.assertTrue; @@ -55,32 +57,17 @@ public class Model2EventTest { @Test public void testModel2EventBadOptions() { - final String[] EventArgs = - { "-zabbu" }; - - final String outputString = runModel2Event(EventArgs); - - assertTrue(outputString.contains("usage: gen-model2event")); + assertThat(runModel2Event(new String[] {"-zabbu"})).contains("usage: gen-model2event"); } @Test public void testModel2EventHelp() { - final String[] EventArgs = - { "-h" }; - - final String outputString = runModel2Event(EventArgs); - - assertTrue(outputString.contains("usage: gen-model2event")); + assertThat(runModel2Event(new String[] {"-h"})).contains("usage: gen-model2event"); } @Test public void testModel2EventVersion() { - final String[] EventArgs = - { "-v" }; - - final String outputString = runModel2Event(EventArgs); - - assertTrue(outputString.contains("gen-model2event")); + assertThat(runModel2Event(new String[] {"-v"})).contains("gen-model2event").doesNotContain("usage:"); } @Test -- cgit 1.2.3-korg