Merge branch 'release/1.3.4' into main #710
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: L1-tests | |
| on: | |
| push: | |
| branches: [ main, develop, 'sprint/**', 'release/**' ] | |
| pull_request: | |
| branches: [ main, develop, 'sprint/**', 'release/**' ] | |
| env: | |
| BUILD_TYPE: Debug | |
| THUNDER_REF: "R4.4.1" | |
| INTERFACES_REF: "develop" | |
| AUTOMATICS_UNAME: ${{ secrets.AUTOMATICS_UNAME}} | |
| AUTOMATICS_PASSCODE: ${{ secrets. AUTOMATICS_PASSCODE}} | |
| jobs: | |
| L1-tests: | |
| name: Build and run unit tests | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| matrix: | |
| compiler: [ gcc, clang ] | |
| coverage: [ with-coverage, without-coverage ] | |
| exclude: | |
| - compiler: clang | |
| coverage: with-coverage | |
| - compiler: clang | |
| coverage: without-coverage | |
| - compiler: gcc | |
| coverage: without-coverage | |
| steps: | |
| - name: Set up cache | |
| # Cache Thunder/ThunderInterfaces. | |
| # https://github.com/actions/cache | |
| # https://docs.github.com/en/rest/actions/cache | |
| # Modify the key if changing the list. | |
| if: ${{ !env.ACT }} | |
| id: cache | |
| uses: actions/cache@v3 | |
| with: | |
| path: | | |
| thunder/build/Thunder | |
| thunder/build/entservices-apis | |
| thunder/build/ThunderTools | |
| thunder/install | |
| !thunder/install/etc/WPEFramework/plugins | |
| !thunder/install/usr/bin/RdkServicesTest | |
| !thunder/install/usr/include/gmock | |
| !thunder/install/usr/include/gtest | |
| !thunder/install/usr/lib/libgmockd.a | |
| !thunder/install/usr/lib/libgmock_maind.a | |
| !thunder/install/usr/lib/libgtestd.a | |
| !thunder/install/usr/lib/libgtest_maind.a | |
| !thunder/install/usr/lib/cmake/GTest | |
| !thunder/install/usr/lib/pkgconfig/gmock.pc | |
| !thunder/install/usr/lib/pkgconfig/gmock_main.pc | |
| !thunder/install/usr/lib/pkgconfig/gtest.pc | |
| !thunder/install/usr/lib/pkgconfig/gtest_main.pc | |
| !thunder/install/usr/lib/wpeframework/plugins | |
| key: ${{ runner.os }}-${{ env.THUNDER_REF }}-${{ env.INTERFACES_REF }}-4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v4 | |
| with: | |
| python-version: '3.x' | |
| - run: pip install jsonref | |
| - name: Set up CMake | |
| uses: jwlawson/[email protected] | |
| with: | |
| cmake-version: '3.16.x' | |
| - name: Install packages | |
| run: > | |
| sudo apt update | |
| && | |
| sudo apt install -y libsqlite3-dev libcurl4-openssl-dev valgrind lcov clang libsystemd-dev libboost-all-dev libwebsocketpp-dev meson libcunit1 libcunit1-dev curl protobuf-compiler-grpc libgrpc-dev libgrpc++-dev | |
| - name: Install GStreamer | |
| run: | | |
| sudo apt update | |
| sudo apt install -y libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev | |
| - name: Build trower-base64 | |
| run: | | |
| if [ ! -d "trower-base64" ]; then | |
| git clone https://github.com/xmidt-org/trower-base64.git | |
| fi | |
| cd trower-base64 | |
| meson setup --warnlevel 3 --werror build | |
| ninja -C build | |
| sudo ninja -C build install | |
| - name: Checkout Thunder | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: rdkcentral/Thunder | |
| path: Thunder | |
| ref: ${{env.THUNDER_REF}} | |
| - name: Checkout ThunderTools | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: rdkcentral/ThunderTools | |
| path: ThunderTools | |
| ref: R4.4.3 | |
| - name: Checkout entservices-testframework | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: rdkcentral/entservices-testframework | |
| path: entservices-testframework | |
| ref: develop | |
| token: ${{ secrets.RDKCM_RDKE }} | |
| - name: Checkout entservices-inputoutput | |
| uses: actions/checkout@v3 | |
| with: | |
| path: entservices-inputoutput | |
| - name: Checkout googletest | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: google/googletest | |
| path: googletest | |
| ref: v1.15.0 | |
| - name: Apply patches ThunderTools | |
| run: | | |
| cd $GITHUB_WORKSPACE/ThunderTools | |
| patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/00010-R4.4-Add-support-for-project-dir.patch | |
| cd - | |
| - name: Build ThunderTools | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/ThunderTools" | |
| -B build/ThunderTools | |
| -DEXCEPTIONS_ENABLE=ON | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DGENERIC_CMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| && | |
| cmake --build build/ThunderTools -j8 | |
| && | |
| cmake --install build/ThunderTools | |
| - name: Apply patches Thunder | |
| run: | | |
| cd $GITHUB_WORKSPACE/Thunder | |
| patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/Use_Legact_Alt_Based_On_ThunderTools_R4.4.3.patch | |
| patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/error_code_R4_4.patch | |
| patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/1004-Add-support-for-project-dir.patch | |
| patch -p1 < $GITHUB_WORKSPACE/entservices-testframework/patches/RDKEMW-733-Add-ENTOS-IDS.patch | |
| cd - | |
| - name: Build Thunder | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/Thunder" | |
| -B build/Thunder | |
| -DMESSAGING=ON | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DGENERIC_CMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DBUILD_TYPE=Debug | |
| -DBINDING=127.0.0.1 | |
| -DPORT=55555 | |
| -DEXCEPTIONS_ENABLE=ON | |
| && | |
| cmake --build build/Thunder -j8 | |
| && | |
| cmake --install build/Thunder | |
| - name: Checkout entservices-apis | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| uses: actions/checkout@v3 | |
| with: | |
| repository: rdkcentral/entservices-apis | |
| path: entservices-apis | |
| ref: ${{env.INTERFACES_REF}} | |
| #token : ${{ secrets.RDKCM_RDKE }} | |
| run: rm -rf $GITHUB_WORKSPACE/entservices-apis/jsonrpc/DTV.json | |
| - name: Build entservices-apis | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/entservices-apis" | |
| -B build/entservices-apis | |
| -DEXCEPTIONS_ENABLE=ON | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| && | |
| cmake --build build/entservices-apis -j8 | |
| && | |
| cmake --install build/entservices-apis | |
| - name: Generate external headers | |
| # Empty headers to mute errors | |
| run: > | |
| cd "$GITHUB_WORKSPACE/entservices-testframework/Tests/" | |
| && | |
| mkdir -p | |
| headers | |
| headers/audiocapturemgr | |
| headers/rdk/ds | |
| headers/rdk/iarmbus | |
| headers/rdk/iarmmgrs-hal | |
| headers/rdk/halif/ | |
| headers/rdk/halif/deepsleep-manager | |
| headers/ccec/drivers | |
| headers/ccec/host | |
| headers/network | |
| headers/proc | |
| && | |
| cd headers | |
| && | |
| touch | |
| audiocapturemgr/audiocapturemgr_iarm.h | |
| ccec/drivers/CecIARMBusMgr.h | |
| ccec/FrameListener.hpp | |
| ccec/Connection.hpp | |
| ccec/Assert.hpp | |
| ccec/Messages.hpp | |
| ccec/MessageDecoder.hpp | |
| ccec/MessageProcessor.hpp | |
| ccec/CECFrame.hpp | |
| ccec/MessageEncoder.hpp | |
| ccec/host/RDK.hpp | |
| rdk/ds/audioOutputPort.hpp | |
| rdk/ds/compositeIn.hpp | |
| rdk/ds/dsDisplay.h | |
| rdk/ds/dsError.h | |
| rdk/ds/dsMgr.h | |
| rdk/ds/dsTypes.h | |
| rdk/ds/dsUtl.h | |
| rdk/ds/exception.hpp | |
| rdk/ds/hdmiIn.hpp | |
| rdk/ds/host.hpp | |
| rdk/ds/list.hpp | |
| rdk/ds/manager.hpp | |
| rdk/ds/sleepMode.hpp | |
| rdk/ds/videoDevice.hpp | |
| rdk/ds/videoOutputPort.hpp | |
| rdk/ds/videoOutputPortConfig.hpp | |
| rdk/ds/videoOutputPortType.hpp | |
| rdk/ds/videoResolution.hpp | |
| rdk/ds/frontPanelIndicator.hpp | |
| rdk/ds/frontPanelConfig.hpp | |
| rdk/ds/frontPanelTextDisplay.hpp | |
| rdk/iarmbus/libIARM.h | |
| rdk/iarmbus/libIBus.h | |
| rdk/iarmbus/libIBusDaemon.h | |
| rdk/halif/deepsleep-manager/deepSleepMgr.h | |
| rdk/iarmmgrs-hal/mfrMgr.h | |
| rdk/iarmmgrs-hal/sysMgr.h | |
| network/wifiSrvMgrIarmIf.h | |
| network/netsrvmgrIarm.h | |
| libudev.h | |
| rfcapi.h | |
| rbus.h | |
| dsRpc.h | |
| motionDetector.h | |
| telemetry_busmessage_sender.h | |
| maintenanceMGR.h | |
| pkg.h | |
| secure_wrapper.h | |
| wpa_ctrl.h | |
| proc/readproc.h | |
| systemaudioplatform.h | |
| gdialservice.h | |
| gdialservicecommon.h | |
| && | |
| cp -r /usr/include/gstreamer-1.0/gst /usr/include/glib-2.0/* /usr/lib/x86_64-linux-gnu/glib-2.0/include/* /usr/local/include/trower-base64/base64.h . | |
| - name: Set clang toolchain | |
| if: ${{ matrix.compiler == 'clang' }} | |
| run: echo "TOOLCHAIN_FILE=$GITHUB_WORKSPACE/entservices-testframework/Tests/clang.cmake" >> $GITHUB_ENV | |
| - name: Set gcc/with-coverage toolchain | |
| if: ${{ matrix.compiler == 'gcc' && matrix.coverage == 'with-coverage' && !env.ACT }} | |
| run: echo "TOOLCHAIN_FILE=$GITHUB_WORKSPACE/entservices-testframework/Tests/gcc-with-coverage.cmake" >> $GITHUB_ENV | |
| - name: Build googletest | |
| if: steps.cache.outputs.cache-hit != 'true' | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/googletest" | |
| -B build/googletest | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DGENERIC_CMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DBUILD_TYPE=Debug | |
| -DBUILD_GMOCK=ON | |
| -DBUILD_SHARED_LIBS=OFF | |
| -DCMAKE_POSITION_INDEPENDENT_CODE=ON | |
| && | |
| cmake --build build/googletest -j8 | |
| && | |
| cmake --install build/googletest | |
| - name: Build mocks | |
| run: > | |
| cmake | |
| -S "$GITHUB_WORKSPACE/entservices-testframework/Tests/mocks" | |
| -B build/mocks | |
| -DBUILD_SHARED_LIBS=ON | |
| -DRDK_SERVICES_L1_TEST=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DCMAKE_TOOLCHAIN_FILE="${{ env.TOOLCHAIN_FILE }}" | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} | |
| -DCMAKE_CXX_FLAGS=" | |
| -fprofile-arcs | |
| -ftest-coverage | |
| -DEXCEPTIONS_ENABLE=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DTHUNDER_VERSION=4 | |
| -DTHUNDER_VERSION_MAJOR=4 | |
| -DTHUNDER_VERSION_MINOR=4 | |
| -DRDK_SERVICES_L1_TEST | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/audiocapturemgr | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/ds | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmbus | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmmgrs-hal | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/ccec/drivers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/network | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests | |
| -I $GITHUB_WORKSPACE/entservices-inputoutput/helpers | |
| -I $GITHUB_WORKSPACE/Thunder/Source | |
| -I $GITHUB_WORKSPACE/Thunder/Source/core | |
| -I $GITHUB_WORKSPACE/install/usr/include | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/devicesettings.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Iarm.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Rfc.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/RBus.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Telemetry.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Udev.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/maintenanceMGR.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/pkg.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/secure_wrappermock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/wpa_ctrl_mock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/readprocMockInterface.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/gdialservice.h | |
| --coverage | |
| -Wall -Wno-unused-result -Wno-deprecated-declarations -Wno-error=format= | |
| -Wl,-wrap,system -Wl,-wrap,popen -Wl,-wrap,syslog -Wl,-wrap,v_secure_system -Wl,-wrap,v_secure_popen -Wl,-wrap,v_secure_pclose -Wl,-wrap,unlink -Wl,-wrap,v_secure_system -Wl,-wrap,pclose -Wl,-wrap,setmntent -Wl,-wrap,getmntent | |
| -DENABLE_TELEMETRY_LOGGING | |
| -DUSE_IARMBUS | |
| -DENABLE_SYSTEM_GET_STORE_DEMO_LINK | |
| -DENABLE_DEEP_SLEEP | |
| -DENABLE_SET_WAKEUP_SRC_CONFIG | |
| -DENABLE_THERMAL_PROTECTION | |
| -DUSE_DRM_SCREENCAPTURE | |
| -DHAS_API_SYSTEM | |
| -DHAS_API_POWERSTATE | |
| -DHAS_RBUS | |
| -DENABLE_DEVICE_MANUFACTURER_INFO" | |
| && | |
| cmake --build build/mocks -j8 | |
| && | |
| cmake --install build/mocks | |
| - name: Build entservices-inputoutput | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/entservices-inputoutput" | |
| -B build/entservices-inputoutput | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DCMAKE_CXX_FLAGS=" | |
| -fprofile-arcs | |
| -ftest-coverage | |
| -DEXCEPTIONS_ENABLE=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DTHUNDER_VERSION=4 | |
| -DTHUNDER_VERSION_MAJOR=4 | |
| -DTHUNDER_VERSION_MINOR=4 | |
| -DRDK_SERVICES_L1_TEST | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/audiocapturemgr | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/ds | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmbus | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmmgrs-hal | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/ccec/drivers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/network | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests | |
| -I $GITHUB_WORKSPACE/Thunder/Source | |
| -I $GITHUB_WORKSPACE/Thunder/Source/core | |
| -I $GITHUB_WORKSPACE/install/usr/include | |
| -I $GITHUB_WORKSPACE/install/usr/include/WPEFramework | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/devicesettings.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Iarm.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Rfc.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/RBus.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Telemetry.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Udev.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/maintenanceMGR.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/pkg.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/secure_wrappermock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/wpa_ctrl_mock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/readprocMockInterface.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/gdialservice.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/HdmiCec.h | |
| --coverage | |
| -Wall -Wno-unused-result -Wno-deprecated-declarations -Wno-error=format= | |
| -Wl,-wrap,system -Wl,-wrap,popen -Wl,-wrap,syslog -Wl,-wrap,v_secure_system -Wl,-wrap,v_secure_popen -Wl,-wrap,v_secure_pclose -Wl,-wrap,unlink | |
| -DENABLE_TELEMETRY_LOGGING | |
| -DUSE_IARMBUS | |
| -DENABLE_SYSTEM_GET_STORE_DEMO_LINK | |
| -DENABLE_DEEP_SLEEP | |
| -DENABLE_SET_WAKEUP_SRC_CONFIG | |
| -DENABLE_THERMAL_PROTECTION | |
| -DUSE_DRM_SCREENCAPTURE | |
| -DHAS_API_SYSTEM | |
| -DHAS_API_POWERSTATE | |
| -DHAS_RBUS | |
| -DENABLE_DEVICE_MANUFACTURER_INFO" | |
| -DCOMCAST_CONFIG=OFF | |
| -DCMAKE_DISABLE_FIND_PACKAGE_DS=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_IARMBus=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_Udev=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_RFC=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_RBus=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_CEC=ON | |
| -DCMAKE_BUILD_TYPE=Debug | |
| -DDS_FOUND=ON | |
| -DHAS_FRONT_PANEL=ON | |
| -DRDK_SERVICES_L1_TEST=ON | |
| -DPLUGIN_AVINPUT=ON | |
| -DPLUGIN_HDMIINPUT=ON | |
| -DPLUGIN_HDCPPROFILE=ON | |
| -DPLUGIN_HDMICECSOURCE=ON | |
| -DPLUGIN_HDMICECSINK=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DHIDE_NON_EXTERNAL_SYMBOLS=OFF | |
| && | |
| cmake --build build/entservices-inputoutput -j8 | |
| && | |
| cmake --install build/entservices-inputoutput | |
| - name: Build entservices-testframework | |
| run: > | |
| cmake -G Ninja | |
| -S "$GITHUB_WORKSPACE/entservices-testframework" | |
| -B build/entservices-testframework | |
| -DCMAKE_INSTALL_PREFIX="$GITHUB_WORKSPACE/install/usr" | |
| -DCMAKE_MODULE_PATH="$GITHUB_WORKSPACE/install/tools/cmake" | |
| -DCMAKE_CXX_FLAGS=" | |
| -fprofile-arcs | |
| -ftest-coverage | |
| -DEXCEPTIONS_ENABLE=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DTHUNDER_VERSION=4 | |
| -DTHUNDER_VERSION_MAJOR=4 | |
| -DTHUNDER_VERSION_MINOR=4 | |
| -DRDK_SERVICES_L1_TEST | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/audiocapturemgr | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/ds | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmbus | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/rdk/iarmmgrs-hal | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/ccec/drivers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests/headers/network | |
| -I $GITHUB_WORKSPACE/entservices-inputoutput/helpers | |
| -I $GITHUB_WORKSPACE/entservices-testframework/Tests | |
| -I $GITHUB_WORKSPACE/Thunder/Source | |
| -I $GITHUB_WORKSPACE/Thunder/Source/core | |
| -I $GITHUB_WORKSPACE/install/usr/include | |
| -I $GITHUB_WORKSPACE/install/usr/include/WPEFramework | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/devicesettings.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Iarm.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Rfc.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/RBus.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Telemetry.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/Udev.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/maintenanceMGR.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/pkg.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/secure_wrappermock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/wpa_ctrl_mock.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/readprocMockInterface.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/gdialservice.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/HdmiCec.h | |
| -include $GITHUB_WORKSPACE/entservices-testframework/Tests/mocks/thunder/Communicator.h | |
| --coverage | |
| -Wall -Wno-unused-result -Wno-deprecated-declarations -Wno-error=format= | |
| -Wl,-wrap,system -Wl,-wrap,popen -Wl,-wrap,syslog -Wl,--no-as-needed | |
| -DENABLE_TELEMETRY_LOGGING | |
| -DUSE_IARMBUS | |
| -DENABLE_SYSTEM_GET_STORE_DEMO_LINK | |
| -DENABLE_DEEP_SLEEP | |
| -DENABLE_SET_WAKEUP_SRC_CONFIG | |
| -DENABLE_THERMAL_PROTECTION | |
| -DUSE_DRM_SCREENCAPTURE | |
| -DHAS_API_SYSTEM | |
| -DHAS_API_POWERSTATE | |
| -DHAS_RBUS | |
| -DENABLE_DEVICE_MANUFACTURER_INFO" | |
| -DCOMCAST_CONFIG=OFF | |
| -DCMAKE_DISABLE_FIND_PACKAGE_DS=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_IARMBus=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_Udev=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_RFC=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_RBus=ON | |
| -DCMAKE_DISABLE_FIND_PACKAGE_CEC=ON | |
| -DCMAKE_BUILD_TYPE=Debug | |
| -DDS_FOUND=ON | |
| -DPLUGIN_AVINPUT=ON | |
| -DPLUGIN_HDMIINPUT=ON | |
| -DPLUGIN_HDCPPROFILE=ON | |
| -DPLUGIN_HDMICECSOURCE=ON | |
| -DPLUGIN_HDMICECSINK=ON | |
| -DRDK_SERVICES_L1_TEST=ON | |
| -DUSE_THUNDER_R4=ON | |
| -DHIDE_NON_EXTERNAL_SYMBOLS=OFF | |
| && | |
| cmake --build build/entservices-testframework -j8 | |
| && | |
| cmake --install build/entservices-testframework | |
| - name: Set up files | |
| run: > | |
| sudo mkdir -p -m 777 | |
| /tmp/test/testApp/etc/apps | |
| /opt/persistent | |
| /opt/secure | |
| /opt/secure/reboot | |
| /opt/secure/persistent | |
| /opt/secure/persistent/System | |
| /opt/logs | |
| /lib/rdk | |
| /run/media/sda1/logs/PreviousLogs | |
| /run/sda1/UsbTestFWUpdate | |
| /run/sda1/UsbProdFWUpdate | |
| /run/sda2 | |
| /var/run/wpa_supplicant | |
| /tmp/bus/usb/devices/100-123 | |
| /tmp/bus/usb/devices/101-124 | |
| /tmp/block/sda/device | |
| /tmp/block/sdb/device | |
| /dev/disk/by-id | |
| /dev | |
| && | |
| if [ ! -f mknod /dev/sda c 240 0 ]; then mknod /dev/sda c 240 0; fi && | |
| if [ ! -f mknod /dev/sda1 c 240 0 ]; then mknod /dev/sda1 c 240 0; fi && | |
| if [ ! -f mknod /dev/sda2 c 240 0 ]; then mknod /dev/sda2 c 240 0; fi && | |
| if [ ! -f mknod /dev/sdb c 240 0 ]; then mknod /dev/sdb c 240 0; fi && | |
| if [ ! -f mknod /dev/sdb1 c 240 0 ]; then mknod /dev/sdb1 c 240 0; fi && | |
| if [ ! -f mknod /dev/sdb2 c 240 0 ]; then mknod /dev/sdb2 c 240 0; fi | |
| && | |
| sudo touch | |
| /tmp/test/testApp/etc/apps/testApp_package.json | |
| /opt/rdk_maintenance.conf | |
| /opt/persistent/timeZoneDST | |
| /opt/standbyReason.txt | |
| /opt/tmtryoptout | |
| /opt/fwdnldstatus.txt | |
| /opt/dcm.properties | |
| /etc/device.properties | |
| /etc/dcm.properties | |
| /etc/authService.conf | |
| /version.txt | |
| /run/media/sda1/logs/PreviousLogs/logFile.txt | |
| /run/sda1/HSTP11MWR_5.11p5s1_VBN_sdy.bin | |
| /run/sda1/UsbTestFWUpdate/HSTP11MWR_3.11p5s1_VBN_sdy.bin | |
| /run/sda1/UsbProdFWUpdate/HSTP11MWR_4.11p5s1_VBN_sdy.bin | |
| /lib/rdk/getMaintenanceStartTime.sh | |
| /tmp/opkg.conf | |
| /tmp/bus/usb/devices/100-123/serial | |
| /tmp/bus/usb/devices/101-124/serial | |
| /tmp/block/sda/device/vendor | |
| /tmp/block/sda/device/model | |
| /tmp/block/sdb/device/vendor | |
| /tmp/block/sdb/device/model | |
| && | |
| sudo chmod -R 777 | |
| /opt/rdk_maintenance.conf | |
| /opt/persistent/timeZoneDST | |
| /opt/standbyReason.txt | |
| /opt/tmtryoptout | |
| /opt/fwdnldstatus.txt | |
| /opt/dcm.properties | |
| /etc/device.properties | |
| /etc/dcm.properties | |
| /etc/authService.conf | |
| /version.txt | |
| /lib/rdk/getMaintenanceStartTime.sh | |
| /tmp/opkg.conf | |
| /tmp/bus/usb/devices/100-123/serial | |
| /tmp/block/sda/device/vendor | |
| /tmp/block/sda/device/model | |
| /tmp/bus/usb/devices/101-124/serial | |
| /tmp/block/sdb/device/vendor | |
| /tmp/block/sdb/device/model | |
| && | |
| cd /dev/disk/by-id/ | |
| && | |
| sudo ln -s ../../sda /dev/disk/by-id/usb-Generic_Flash_Disk_B32FD507-0 | |
| && | |
| sudo ln -s ../../sdb /dev/disk/by-id/usb-JetFlash_Transcend_16GB_UEUIRCXT-0 | |
| && | |
| ls -l /dev/disk/by-id/usb-Generic_Flash_Disk_B32FD507-0 | |
| && | |
| ls -l /dev/disk/by-id/usb-JetFlash_Transcend_16GB_UEUIRCXT-0 | |
| - name: Run unit tests without valgrind | |
| run: > | |
| PATH=$GITHUB_WORKSPACE/install/usr/bin:${PATH} | |
| LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install/usr/lib:$GITHUB_WORKSPACE/install/usr/lib/wpeframework/plugins:${LD_LIBRARY_PATH} | |
| GTEST_OUTPUT="json:$(pwd)/rdkL1TestResults.json" | |
| RdkServicesL1Test && | |
| cp -rf $(pwd)/rdkL1TestResults.json $GITHUB_WORKSPACE/rdkL1TestResultsWithoutValgrind.json && | |
| rm -rf $(pwd)/rdkL1TestResults.json | |
| - name: Run unit tests with valgrind | |
| if: ${{ !env.ACT }} | |
| run: > | |
| PATH=$GITHUB_WORKSPACE/install/usr/bin:${PATH} | |
| LD_LIBRARY_PATH=$GITHUB_WORKSPACE/install/usr/lib:$GITHUB_WORKSPACE/install/usr/lib/wpeframework/plugins:${LD_LIBRARY_PATH} | |
| GTEST_OUTPUT="json:$(pwd)/rdkL1TestResults.json" | |
| valgrind | |
| --tool=memcheck | |
| --log-file=valgrind_log | |
| --leak-check=yes | |
| --show-reachable=yes | |
| --track-fds=yes | |
| --fair-sched=try | |
| RdkServicesL1Test && | |
| cp -rf $(pwd)/rdkL1TestResults.json $GITHUB_WORKSPACE/rdkL1TestResultsWithValgrind.json && | |
| rm -rf $(pwd)/rdkL1TestResults.json | |
| - name: Generate coverage | |
| if: ${{ matrix.coverage == 'with-coverage' && !env.ACT }} | |
| run: > | |
| cp $GITHUB_WORKSPACE/entservices-testframework/Tests/L1Tests/.lcovrc_l1 ~/.lcovrc | |
| && | |
| lcov -c | |
| -o coverage.info | |
| -d build/entservices-inputoutput | |
| && | |
| lcov | |
| -r coverage.info | |
| '/usr/include/*' | |
| '*/build/entservices-inputoutput/_deps/*' | |
| '*/install/usr/include/*' | |
| '*/Tests/headers/*' | |
| '*/Tests/mocks/*' | |
| '*/Tests/L1Tests/tests/*' | |
| '*/Thunder/*' | |
| -o filtered_coverage.info | |
| && | |
| genhtml | |
| -o coverage | |
| -t "entservices-inputoutput coverage" | |
| filtered_coverage.info | |
| - name: Upload artifacts | |
| if: ${{ !env.ACT }} | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: artifacts | |
| path: | | |
| coverage/ | |
| valgrind_log | |
| rdkL1TestResultsWithoutValgrind.json | |
| rdkL1TestResultsWithValgrind.json | |
| if-no-files-found: warn | |