[ 
https://issues.apache.org/jira/browse/MINIFI-290?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kevin Doran updated MINIFI-290:
-------------------------------
    Description: 
As part of MINIFI-275, unit test cases were introduced that rely on YAML 
configuration input. Currently, the YAML is defined as string constants in the 
test cases (see [1]).

During peer review of MINIFI-275, it was suggested by [~phrocker] to move the 
YAML inputs to resource files and load them for the test. This ticket captures 
that improvement which will cleanup the unit test code by making the YAML input 
easier to locate and maintain.

As part of this, we need a clean way to set resource file locations in CMAKE so 
that they are easily available in ctest test cases. As the `test` target which 
invokes ctest is a builtin/standard CMAKE generated target, it is more limited 
in its configurability for items such as command line arguments [2] and 
environment variables (SET (CTEST_ENVIRONMENT ...) apparently does not work in 
CMakeLists.txt files, only when CMake is invoked via the CLI). This needs some 
more experimenting / digging into with our specific version of CMAKE before we 
decide on an approach for implementation.

[1] https://github.com/apache/nifi-minifi-cpp/pull/85 
[2] http://stackoverflow.com/a/16163137

  was:
As part of MINIFI-275, unit test cases were introduced that rely on YAML 
configuration input. Currently, the YAML is defined as string constants in the 
test cases (see [1]).

During peer review of MINIFI-275, it was suggested by [~phrocker] to move the 
YAML inputs to resource files and load them for the test. This ticket captures 
that improvement which will cleanup the unit test code by making the YAML input 
easier to locate and maintain.

As part of this, we need a clean way to set resource file locations in CMAKE so 
that they are easily available in ctest test cases. As the `test` target which 
invokes ctest is a builtin/standard CMAKE generated target, it is more limited 
in its configurability for items such as command line arguments [2] and 
environment variables (SET (CTEST_ENVIRONMENT ...) apparently does not work in 
CMakeLists.txt files, only when CMake is invoked via the CLI. This needs some 
more experimenting / digging into with our specific version of CMAKE before we 
decide on an approach for implementation.

[1] https://github.com/apache/nifi-minifi-cpp/pull/85 
[2] http://stackoverflow.com/a/16163137


> Enable resource files to be loaded easily in unit tests
> -------------------------------------------------------
>
>                 Key: MINIFI-290
>                 URL: https://issues.apache.org/jira/browse/MINIFI-290
>             Project: Apache NiFi MiNiFi
>          Issue Type: Improvement
>          Components: C++, Testing
>            Reporter: Kevin Doran
>            Priority: Minor
>
> As part of MINIFI-275, unit test cases were introduced that rely on YAML 
> configuration input. Currently, the YAML is defined as string constants in 
> the test cases (see [1]).
> During peer review of MINIFI-275, it was suggested by [~phrocker] to move the 
> YAML inputs to resource files and load them for the test. This ticket 
> captures that improvement which will cleanup the unit test code by making the 
> YAML input easier to locate and maintain.
> As part of this, we need a clean way to set resource file locations in CMAKE 
> so that they are easily available in ctest test cases. As the `test` target 
> which invokes ctest is a builtin/standard CMAKE generated target, it is more 
> limited in its configurability for items such as command line arguments [2] 
> and environment variables (SET (CTEST_ENVIRONMENT ...) apparently does not 
> work in CMakeLists.txt files, only when CMake is invoked via the CLI). This 
> needs some more experimenting / digging into with our specific version of 
> CMAKE before we decide on an approach for implementation.
> [1] https://github.com/apache/nifi-minifi-cpp/pull/85 
> [2] http://stackoverflow.com/a/16163137



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to