diff --git a/src/BUILD.gn b/src/BUILD.gn index 14eb5e836c4d9a..3c98997b921538 100644 --- a/src/BUILD.gn +++ b/src/BUILD.gn @@ -61,6 +61,7 @@ if (chip_build_tests) { "${chip_root}/src/app/clusters/group-key-mgmt-server/tests", "${chip_root}/src/app/clusters/network-commissioning/tests", "${chip_root}/src/app/clusters/ota-provider/tests", + "${chip_root}/src/app/clusters/ota-requestor/tests", "${chip_root}/src/app/clusters/software-diagnostics-server/tests", "${chip_root}/src/app/clusters/ethernet-network-diagnostics-server/tests", "${chip_root}/src/app/clusters/operational-credentials-server/tests", diff --git a/src/app/clusters/ota-requestor/BUILD.gn b/src/app/clusters/ota-requestor/BUILD.gn index f8c5be47d1b366..fba5bf2798673a 100644 --- a/src/app/clusters/ota-requestor/BUILD.gn +++ b/src/app/clusters/ota-requestor/BUILD.gn @@ -19,7 +19,20 @@ group("ota-requestor") { # TODO: DefaultOTARequestor depends on controller, however the cluster server itself does not. # Maybe DefaultOTARequestor and related code should have its own source set. public_deps = [ + ":storage", "${chip_root}/src/app/clusters/basic-information", "${chip_root}/src/controller:interactions", ] } + +source_set("storage") { + sources = [ + "DefaultOTARequestorStorage.cpp", + "DefaultOTARequestorStorage.h", + "OTARequestorStorage.h", + ] + + public_deps = [ + "${chip_root}/src/app/common:cluster-objects", + ] +} diff --git a/src/app/clusters/ota-requestor/app_config_dependent_sources.cmake b/src/app/clusters/ota-requestor/app_config_dependent_sources.cmake index c8ae5a73ff68f5..0cb665f12014fc 100644 --- a/src/app/clusters/ota-requestor/app_config_dependent_sources.cmake +++ b/src/app/clusters/ota-requestor/app_config_dependent_sources.cmake @@ -22,15 +22,21 @@ TARGET_SOURCES( "${CLUSTER_DIR}/DefaultOTARequestor.h" "${CLUSTER_DIR}/DefaultOTARequestorDriver.cpp" "${CLUSTER_DIR}/DefaultOTARequestorDriver.h" - "${CLUSTER_DIR}/DefaultOTARequestorStorage.cpp" - "${CLUSTER_DIR}/DefaultOTARequestorStorage.h" "${CLUSTER_DIR}/DefaultOTARequestorUserConsent.h" "${CLUSTER_DIR}/ExtendedOTARequestorDriver.cpp" "${CLUSTER_DIR}/ExtendedOTARequestorDriver.h" "${CLUSTER_DIR}/OTARequestorDriver.h" - "${CLUSTER_DIR}/OTARequestorStorage.h" "${CLUSTER_DIR}/OTATestEventTriggerHandler.cpp" "${CLUSTER_DIR}/OTATestEventTriggerHandler.h" "${CLUSTER_DIR}/ota-requestor-server.cpp" "${CLUSTER_DIR}/ota-requestor-server.h" -) \ No newline at end of file +) + +# These are things that BUILD.gn dependencies would pull +TARGET_SOURCES( + ${APP_TARGET} + PRIVATE + "${CLUSTER_DIR}/DefaultOTARequestorStorage.cpp" + "${CLUSTER_DIR}/DefaultOTARequestorStorage.h" + "${CLUSTER_DIR}/OTARequestorStorage.h" +) diff --git a/src/app/clusters/ota-requestor/app_config_dependent_sources.gni b/src/app/clusters/ota-requestor/app_config_dependent_sources.gni index 87c8fee9410233..80e02bab0e7a81 100644 --- a/src/app/clusters/ota-requestor/app_config_dependent_sources.gni +++ b/src/app/clusters/ota-requestor/app_config_dependent_sources.gni @@ -18,13 +18,10 @@ app_config_dependent_sources = [ "DefaultOTARequestor.h", "DefaultOTARequestorDriver.cpp", "DefaultOTARequestorDriver.h", - "DefaultOTARequestorStorage.cpp", - "DefaultOTARequestorStorage.h", "DefaultOTARequestorUserConsent.h", "ExtendedOTARequestorDriver.cpp", "ExtendedOTARequestorDriver.h", "OTARequestorDriver.h", - "OTARequestorStorage.h", "OTATestEventTriggerHandler.cpp", "OTATestEventTriggerHandler.h", "ota-requestor-server.cpp", diff --git a/src/app/clusters/ota-requestor/tests/BUILD.gn b/src/app/clusters/ota-requestor/tests/BUILD.gn new file mode 100644 index 00000000000000..5ee5f2fbbc3270 --- /dev/null +++ b/src/app/clusters/ota-requestor/tests/BUILD.gn @@ -0,0 +1,37 @@ +# Copyright (c) 2025 Project CHIP Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import("//build_overrides/build.gni") +import("//build_overrides/chip.gni") +import("//build_overrides/pigweed.gni") + +import("${chip_root}/build/chip/chip_test_suite.gni") + +chip_test_suite("tests") +{ + output_name = "TestDefaultOTARequestor" + + test_sources = [ "TestDefaultOTARequestorStorage.cpp" ] + + sources = [] + + cflags = [ "-Wconversion" ] + + public_deps = [ + "${chip_root}/src/app/clusters/ota-requestor:storage", + "${chip_root}/src/app/common:cluster-objects", + "${chip_root}/src/lib/core", + "${chip_root}/src/lib/core:string-builder-adapters", + "${chip_root}/src/lib/support:testing", + ] +} diff --git a/src/app/tests/TestDefaultOTARequestorStorage.cpp b/src/app/clusters/ota-requestor/tests/TestDefaultOTARequestorStorage.cpp similarity index 100% rename from src/app/tests/TestDefaultOTARequestorStorage.cpp rename to src/app/clusters/ota-requestor/tests/TestDefaultOTARequestorStorage.cpp diff --git a/src/app/tests/BUILD.gn b/src/app/tests/BUILD.gn index 651239f98cf932..863c1c0697a7d8 100644 --- a/src/app/tests/BUILD.gn +++ b/src/app/tests/BUILD.gn @@ -46,19 +46,6 @@ static_library("helpers") { ] } -source_set("ota-requestor-test-srcs") { - sources = [ - "${chip_root}/src/app/clusters/ota-requestor/DefaultOTARequestorStorage.cpp", - "${chip_root}/src/app/clusters/ota-requestor/DefaultOTARequestorStorage.h", - "${chip_root}/src/app/clusters/ota-requestor/OTARequestorStorage.h", - ] - - public_deps = [ - "${chip_root}/src/app/common:cluster-objects", - "${chip_root}/src/lib/core", - ] -} - source_set("thread-network-directory-test-srcs") { sources = [ "${chip_root}/src/app/clusters/thread-network-directory-server/DefaultThreadNetworkDirectoryStorage.cpp", @@ -256,7 +243,6 @@ chip_test_suite("tests") { "TestCommandPathParams.cpp", "TestConcreteAttributePath.cpp", "TestDataModelSerialization.cpp", - "TestDefaultOTARequestorStorage.cpp", "TestDefaultSafeAttributePersistenceProvider.cpp", "TestDefaultTermsAndConditionsProvider.cpp", "TestDefaultThreadNetworkDirectoryStorage.cpp", @@ -291,7 +277,6 @@ chip_test_suite("tests") { ":closure-dimension-test-srcs", ":ecosystem-information-test-srcs", ":operational-state-test-srcs", - ":ota-requestor-test-srcs", ":thread-network-directory-test-srcs", ":time-sync-data-provider-test-srcs", "${chip_root}/src/app",