MINIFICPP-2756 Rename minifi_test_framework to minifi_behave#2146
MINIFICPP-2756 Rename minifi_test_framework to minifi_behave#2146martinzink wants to merge 2 commits intoapache:MINIFICPP-2718from
Conversation
There was a problem hiding this comment.
Pull request overview
This PR renames the Behave-based MiNiFi testing framework package from minifi_test_framework to minifi_behave across the repository, updating extension test suites accordingly and introducing the renamed framework’s Python modules/resources under the new package namespace.
Changes:
- Updated Behave step/environment/container imports in extension test suites to use
minifi_behaveinstead ofminifi_test_framework. - Renamed the Python package metadata (
pyproject.toml, egg-info ignore) to publish/install asminifi-behave. - Added/ported core framework modules under
behave_framework/src/minifi_behave(flow definition model + container/core utilities + resources).
Reviewed changes
Copilot reviewed 76 out of 100 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| extensions/standard-processors/tests/features/steps/steps.py | Switch test-step imports to minifi_behave. |
| extensions/standard-processors/tests/features/steps/minifi_controller_steps.py | Switch helper/context imports to minifi_behave. |
| extensions/standard-processors/tests/features/steps/minifi_c2_server_container.py | Switch container/core/ssl_utils imports to minifi_behave. |
| extensions/standard-processors/tests/features/environment.py | Switch common hooks imports to minifi_behave. |
| extensions/standard-processors/tests/features/containers/tcp_client_container.py | Switch container/context imports to minifi_behave. |
| extensions/standard-processors/tests/features/containers/syslog_container.py | Switch base container import to minifi_behave. |
| extensions/standard-processors/tests/features/containers/diag_slave_container.py | Switch container/builder/context imports to minifi_behave. |
| extensions/sql/tests/features/steps/steps.py | Switch step imports to minifi_behave. |
| extensions/sql/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/sql/tests/features/containers/postgress_server_container.py | Switch container/builder/context imports to minifi_behave. |
| extensions/splunk/tests/features/steps/steps.py | Switch step/context imports to minifi_behave. |
| extensions/splunk/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/splunk/tests/features/containers/splunk_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/python/tests/features/steps/steps.py | Switch step/builder/context imports to minifi_behave. |
| extensions/python/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/prometheus/tests/features/steps/steps.py | Switch step/context imports to minifi_behave. |
| extensions/prometheus/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/prometheus/tests/features/containers/prometheus_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/opc/tests/features/steps/steps.py | Switch step/context imports to minifi_behave. |
| extensions/opc/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/opc/tests/features/containers/opc_ua_server_container.py | Switch container/context imports to minifi_behave. |
| extensions/mqtt/tests/features/steps/steps.py | Switch step/context/processor imports to minifi_behave. |
| extensions/mqtt/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/mqtt/tests/features/containers/mqtt_broker_container.py | Switch container/builder/context imports to minifi_behave. |
| extensions/lua/tests/features/steps/steps.py | Switch step imports to minifi_behave. |
| extensions/lua/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/llamacpp/tests/features/steps/steps.py | Switch step imports to minifi_behave. |
| extensions/llamacpp/tests/features/environment.py | Switch hooks/builder/context imports to minifi_behave. |
| extensions/kubernetes/tests/features/steps/steps.py | Switch step/context/processor/controller_service imports to minifi_behave. |
| extensions/kubernetes/tests/features/steps/minifi_as_pod_in_kubernetes_cluster.py | Switch container/context imports to minifi_behave. |
| extensions/kubernetes/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/kafka/tests/features/steps/steps.py | Switch step/context/processor imports to minifi_behave. |
| extensions/kafka/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/kafka/tests/features/containers/kafka_server_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/grafana-loki/tests/features/steps/steps.py | Switch step/context imports to minifi_behave. |
| extensions/grafana-loki/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/grafana-loki/tests/features/containers/reverse_proxy_container.py | Switch container/context imports to minifi_behave. |
| extensions/grafana-loki/tests/features/containers/grafana_loki_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/gcp/tests/features/steps/steps.py | Switch step/context imports to minifi_behave. |
| extensions/gcp/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/gcp/tests/features/containers/fake_gcs_server_container.py | Switch container/context imports to minifi_behave. |
| extensions/elasticsearch/tests/features/steps/steps.py | Switch step/context/controller_service imports to minifi_behave. |
| extensions/elasticsearch/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/elasticsearch/tests/features/containers/opensearch_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/elasticsearch/tests/features/containers/elasticsearch_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/elasticsearch/tests/features/containers/elastic_base_container.py | Switch container/context/helper imports to minifi_behave. |
| extensions/couchbase/tests/features/steps/steps.py | Switch step/context/controller_service imports to minifi_behave. |
| extensions/couchbase/tests/features/environment.py | Switch hooks/builder imports to minifi_behave. |
| extensions/couchbase/tests/features/containers/couchbase_server_container.py | Switch container/context/ssl_utils imports to minifi_behave. |
| extensions/civetweb/tests/features/steps/steps.py | Switch step imports to minifi_behave. |
| extensions/civetweb/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/azure/tests/features/steps/steps.py | Switch step/context/processor imports to minifi_behave. |
| extensions/azure/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/azure/tests/features/containers/azure_server_container.py | Switch container/context/helper imports to minifi_behave. |
| extensions/aws/tests/features/steps/steps.py | Switch step/context/processor imports to minifi_behave. |
| extensions/aws/tests/features/environment.py | Switch hooks imports to minifi_behave. |
| extensions/aws/tests/features/containers/s3_server_container.py | Switch container/context imports to minifi_behave. |
| extensions/aws/tests/features/containers/kinesis_server_container.py | Switch container/builder/context imports to minifi_behave. |
| behave_framework/src/minifi_behave/steps/flow_building_steps.py | Switch internal framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/steps/core_steps.py | Switch internal framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/steps/configuration_steps.py | Switch internal framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/steps/checking_steps.py | Switch internal framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/minifi/remote_process_group.py | Add RPG model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/remote_port.py | Add remote port model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/processor.py | Add processor model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/parameter_context.py | Update import path to minifi_behave. |
| behave_framework/src/minifi_behave/minifi/parameter.py | Add parameter model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/output_port.py | Add output-port model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/nifi_flow_definition.py | Add NiFi flow JSON serializer under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/minifi_flow_definition.py | Add MiNiFi YAML serializer under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/input_port.py | Add input-port model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/funnel.py | Add funnel model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/flow_definition.py | Add shared flow model base under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/controller_service.py | Add controller-service model under minifi_behave. |
| behave_framework/src/minifi_behave/minifi/connection.py | Add connection model under minifi_behave. |
| behave_framework/src/minifi_behave/core/ssl_utils.py | Add SSL/cert helper utilities under minifi_behave. |
| behave_framework/src/minifi_behave/core/minifi_test_context.py | Switch container protocol imports to minifi_behave. |
| behave_framework/src/minifi_behave/core/hooks.py | Switch cert/context imports to minifi_behave. |
| behave_framework/src/minifi_behave/core/helpers.py | Switch context import to minifi_behave. |
| behave_framework/src/minifi_behave/containers/resources/nifi/convert_cert_to_jks.sh | Add NiFi cert conversion helper script under minifi_behave. |
| behave_framework/src/minifi_behave/containers/resources/minifi-controller/config.yml | Add MiNiFi controller config resource under minifi_behave. |
| behave_framework/src/minifi_behave/containers/nifi_container.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/minifi_win_container.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/minifi_protocol.py | Add protocol helper interface under minifi_behave. |
| behave_framework/src/minifi_behave/containers/minifi_linux_container.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/minifi_controller.py | Switch helper import to minifi_behave. |
| behave_framework/src/minifi_behave/containers/http_proxy_container.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/host_file.py | Add host-file mapping helper under minifi_behave. |
| behave_framework/src/minifi_behave/containers/file.py | Add file helper under minifi_behave. |
| behave_framework/src/minifi_behave/containers/docker_image_builder.py | Add docker image build helper under minifi_behave. |
| behave_framework/src/minifi_behave/containers/directory.py | Add directory helper under minifi_behave. |
| behave_framework/src/minifi_behave/containers/container_windows.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/container_protocol.py | Switch framework imports to minifi_behave. |
| behave_framework/src/minifi_behave/containers/container_linux.py | Switch framework imports to minifi_behave. |
| behave_framework/pyproject.toml | Rename published package and included module prefix to minifi_behave. |
| behave_framework/.gitignore | Update ignored egg-info directory name for the renamed package. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
I think adding a readme for the package would help more, but the new name is better. |
|
| Feature: File system operations are handled by the GetFile, PutFile, ListFile, and FetchFile processors | ||
| In order to store and access data on the local file system | ||
| As a user of MiNiFi | ||
| I need to have GetFile, PutFile, ListFile, and FetchFile processors | ||
|
|
||
| Scenario: Get and put operations run in a simple flow | ||
| Given a GetFile processor with the "Input Directory" property set to "/tmp/input" | ||
| And a directory at "/tmp/input" has a file with the content "test" | ||
| And a PutFile processor with the "Directory" property set to "/tmp/output" | ||
| And PutFile is EVENT_DRIVEN | ||
| And the "success" relationship of the GetFile processor is connected to the PutFile | ||
| And PutFile's success relationship is auto-terminated | ||
| When the MiNiFi instance starts up | ||
| Then a single file with the content "test" is placed in the "/tmp/output" directory in less than 10 seconds |
There was a problem hiding this comment.
the title of this sample feature says it tests ListFile and FetchFile, but it doesn't
Imho this is a more appropriate name(i named it originally so I'll take the blame), and if we were to release this with the C API we might as well keep it nice and tidy.
Depends on
Thank you for submitting a contribution to Apache NiFi - MiNiFi C++.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:
Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?
Does your PR title start with MINIFICPP-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
Has your PR been rebased against the latest commit within the target branch (typically main)?
Is your initial contribution a single, squashed commit?
For code changes:
For documentation related changes:
Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI results for build issues and submit an update to your PR as soon as possible.