X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=docs%2Fdevelopment%2Fdevtools%2Fdevtools.rst;h=2351a32ded3fa50900252ba65ccadd9386535d13;hb=2811100a34fdccfd413e1d5691557d2cf218d5c8;hp=a3016d484dcfc6c208bda7d870b0e55a3f650749;hpb=b4a8ef2502418370f048f944e14ff49d0f824446;p=policy%2Fparent.git diff --git a/docs/development/devtools/devtools.rst b/docs/development/devtools/devtools.rst index a3016d48..2351a32d 100644 --- a/docs/development/devtools/devtools.rst +++ b/docs/development/devtools/devtools.rst @@ -267,6 +267,36 @@ An example of running the api using a docker compose script is located in the Po `Policy CSIT API Docker Compose `_ +Running the Smoke Tests +*********************** + +The following links contain instructions on how to run the smoke tests. These may be helpful to developers to become +familiar with the Policy Framework components and test any local changes. + +.. toctree:: + :maxdepth: 1 + +.. + api-smoke.rst + +.. + pap-smoke.rst + +.. + apex-smoke.rst + +.. + drools-smoke.rst + +.. + xacml-smoke.rst + +.. + distribution-smoke.rst + +.. + clamp-smoke.rst + Running the Stability/Performance Tests *************************************** @@ -281,3 +311,131 @@ familiar with the Policy Framework components and test any local changes. apex-s3p.rst drools-s3p.rst xacml-s3p.rst + distribution-s3p.rst + clamp-s3p.rst + +Running the Pairwise Tests +*********************** + +The following links contain instructions on how to run the pairwise tests. These may be helpful to developers check that +the Policy Framework works in a full ONAP deployment. + +.. toctree:: + :maxdepth: 1 + + clamp-policy.rst + + clamp-dcae.rst + +.. + api-pairwise.rst + +.. + pap-pairwise.rst + +.. + apex-pairwise.rst + +.. + drools-pairwise.rst + +.. + xacml-pairwise.rst + +.. + distribution-pairwise.rst + + +Generating Swagger Documentation +******************************** +The `Policy Parent Integration POM `_ contains a *generateSwaggerDocs* profile. This +profile can be activated on any module that has a Swagger endopint. When active, this profile creates a tarball in Nexus with the name +*-swagger-docs.tar.gz*. The tarball contains the fillowing files: + +.. code-block:: bash + + swagger/swagger.html + swagger/swagger.json + swagger/swagger.pdf + +The profile is activated when: + +1. The following property is defined at the top of the *pom.xml* file for a module + + .. code-block:: bash + + + post-integration-test + + See the `CLAMP runtime POM `_ for an example of the usage of this property. + +2. Unit tests are being executed in the build, in other wirds when the *skipTests* flag is *false*. + +You **must** create a unit test in your module that generates the following file: + +.. code-block:: bash + + src/test/resources/swagger/swagger.json + +Typically, you do this by starting your REST endpoint in a unit test, issuing a REST call to get the Swagger API documentation. The test case below is an example +of such a test case. + +.. code-block:: java + + @Test + public void testSwaggerJson() throws Exception { + ResponseEntity httpsEntity = getRestTemplate() + .getForEntity("https://localhost:" + this.httpsPort + "/restservices/clds/api-doc", String.class); + assertThat(httpsEntity.getStatusCode()).isEqualTo(HttpStatus.OK); + assertThat(httpsEntity.getBody()).contains("swagger"); + FileUtils.writeStringToFile(new File("target/swagger/swagger.json"), httpsEntity.getBody(), + Charset.defaultCharset()); + } + +See `this unit test case `_ +for the full example. + +Running the DMaaP Simulator during Development +********************************************** +It is sometimes convenient to run the DMaaP simulator during development. You can run it from the command line using Maven or from within your IDE. + +Running on the Command Line ++++++++++++++++++++++++++++ +1. Check out the policy models repository +2. Go to the *models-sim/policy-models-simulators* subdirectory in the policy-models repo +3. Run the following Maven command: + + .. code-block:: bash + + mvn exec:java -Dexec.mainClass=org.onap.policy.models.simulators.Main -Dexec.args="src/test/resources/simParameters.json" + +Running in Eclipse +++++++++++++++++++ +1. Check out the policy models repository +2. Go to the *models-sim/policy-models-simulators* module in the policy-models repo +3. Specify a run configuration using the class *org.onap.policy.models.simulators.Main* as the main class +4. Specify an argument of *src/test/resources/simParameters.json* to the run configuration +5. Run the configuration + +Specifying a local configuration file ++++++++++++++++++++++++++++++++++++++ + +You may specify a local configuration file instead of *src/test/resources/simParameters.json* on the command line or as an arument in the run configuration in eclipse: + +.. code-block:: json + + { + "dmaapProvider": { + "name": "DMaaP simulator", + "topicSweepSec": 900 + }, + "restServers": [ + { + "name": "DMaaP simulator", + "providerClass": "org.onap.policy.models.sim.dmaap.rest.DmaapSimRestControllerV1", + "host": "localhost", + "port": 3904, + "https": false + } + ] + }