diff options
author | Jim Hahn <jrh3@att.com> | 2021-02-17 15:23:38 -0500 |
---|---|---|
committer | Jim Hahn <jrh3@att.com> | 2021-02-18 17:47:55 +0000 |
commit | b6977d2f7ce64ece732ac1a1a0525dac972d7ccf (patch) | |
tree | 4966f5aa4737b0fef8241989eb216cce7fbe9294 /tools/simple-wsclient | |
parent | 4e05982e36aa66b83fa0ee44b9631412442c3969 (diff) |
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 <jrh3@att.com>
Diffstat (limited to 'tools/simple-wsclient')
2 files changed, 22 insertions, 69 deletions
diff --git a/tools/simple-wsclient/src/main/java/org/onap/policy/apex/tools/simple/wsclient/SimpleConsole.java b/tools/simple-wsclient/src/main/java/org/onap/policy/apex/tools/simple/wsclient/SimpleConsole.java index 9931c1292..ca123c9bb 100644 --- a/tools/simple-wsclient/src/main/java/org/onap/policy/apex/tools/simple/wsclient/SimpleConsole.java +++ b/tools/simple-wsclient/src/main/java/org/onap/policy/apex/tools/simple/wsclient/SimpleConsole.java @@ -1,6 +1,7 @@ /*- * ============LICENSE_START======================================================= * Copyright (C) 2016-2018 Ericsson. All rights reserved. + * 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. @@ -41,7 +42,7 @@ public class SimpleConsole extends WebSocketClient { /** Application name, used as prompt. */ private final String appName; - + // Output and error streams private PrintStream outStream; private PrintStream errStream; @@ -131,9 +132,9 @@ public class SimpleConsole extends WebSocketClient { }; thread.setName("ClientThread"); thread.start(); - + final BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); - String event = ""; + StringBuilder event = new StringBuilder(); String line; while ((line = in.readLine()) != null) { if ("exit".equals(line)) { @@ -142,10 +143,10 @@ public class SimpleConsole extends WebSocketClient { final String current = line.trim(); if ("".equals(current)) { - this.send(event); - event = ""; + this.send(event.toString()); + event = new StringBuilder(); } else { - event += current; + event.append(current); } } diff --git a/tools/simple-wsclient/src/test/java/org/onap/policy/apex/tools/simple/wsclient/WsClientTest.java b/tools/simple-wsclient/src/test/java/org/onap/policy/apex/tools/simple/wsclient/WsClientTest.java index 6faafe759..e3e775af4 100644 --- a/tools/simple-wsclient/src/test/java/org/onap/policy/apex/tools/simple/wsclient/WsClientTest.java +++ b/tools/simple-wsclient/src/test/java/org/onap/policy/apex/tools/simple/wsclient/WsClientTest.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,8 +22,8 @@ package org.onap.policy.apex.tools.simple.wsclient; +import static org.assertj.core.api.Assertions.assertThat; import static org.assertj.core.api.Assertions.assertThatCode; -import static org.junit.Assert.assertTrue; import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; @@ -44,108 +45,59 @@ public class WsClientTest { @Test public void testWsClientNoOptions() { - final String[] EventArgs = new String[] - {}; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client: starting simple event echo")); + assertThat(runWsClient(new String[] {})).contains("ws-client: starting simple event echo"); } @Test public void testWsClientBadOptions() { - final String[] EventArgs = - { "-zabbu" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("usage: ws-client")); + assertThat(runWsClient(new String[] {"-zabbu"})).contains("usage: ws-client"); } @Test public void testWsClientHelp() { - final String[] EventArgs = - { "-h" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("usage: ws-client")); + assertThat(runWsClient(new String[] {"-h"})).contains("usage: ws-client"); } @Test public void testWsClientVersion() { - final String[] EventArgs = - { "-v" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client")); + assertThat(runWsClient(new String[] {"-v"})).contains("ws-client").doesNotContain("usage:"); } @Test public void testWsClientNoServerArg() { - final String[] EventArgs = - { "-s" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client")); + assertThat(runWsClient(new String[] {"-s"})).contains("ws-client"); } @Test public void testWsClientNoPortArg() { - final String[] EventArgs = - { "-p" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client")); + assertThat(runWsClient(new String[] {"-p"})).contains("usage: ws-client"); } @Test public void testWsClientBadPortArg() { - final String[] EventArgs = - { "-p", "hello" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client")); + assertThat(runWsClient(new String[] {"-p", "hello"})).contains("ws-client"); } @Test public void testWsClientBadServerArg() { - final String[] EventArgs = - { "-s", "asdsadadasd:asdasdsadasd@@" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("ws-client")); + assertThat(runWsClient(new String[] {"-s", "asdsadadasd:asdasdsadasd"})).contains("ws-client"); } @Test public void testWsClientConsole() { - final String[] EventArgs = - { "-c", "-s", "AServerThatDoesntExist", "-p", "99999999" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains("terminate the application typing")); + assertThat(runWsClient(new String[] {"-c", "-s", "AServerThatDoesntExist", "-p", "99999999"})) + .contains("terminate the application typing"); } @Test public void testWsClientEcho() { - final String[] EventArgs = - { "-s", "AServerThatDoesntExist", "-p", "99999999" }; - - final String outputString = runWsClient(EventArgs); - - assertTrue(outputString.contains( - "Once started, the application will simply print out all received events to standard out")); + assertThat(runWsClient(new String[] {"-s", "AServerThatDoesntExist", "-p", "99999999"})).contains( + "Once started, the application will simply print out all received events to standard out"); } /** * Run the application. - * + * * @param eventArgs the command arguments * @return a string containing the command output */ |