From 3d1e064e1a6f4af7bcacf89f641a904d24abac12 Mon Sep 17 00:00:00 2001 From: KonstantinKondrashov Date: Wed, 23 Jan 2019 20:27:28 +0800 Subject: [PATCH] tools: Add unit tests --- tools/ci/test_build_system.sh | 11 +++++++++++ tools/ci/test_build_system_cmake.sh | 11 +++++++++++ 2 files changed, 22 insertions(+) diff --git a/tools/ci/test_build_system.sh b/tools/ci/test_build_system.sh index 305a6e489..99da318d6 100755 --- a/tools/ci/test_build_system.sh +++ b/tools/ci/test_build_system.sh @@ -251,7 +251,18 @@ function run_tests() make assert_rebuilt ${APP_BINS} assert_not_rebuilt ${BOOTLOADER_BINS} esp32/libesp32.a + + print_status "Re-building does not change app.bin" + take_build_snapshot + make + assert_not_rebuilt ${APP_BINS} ${BOOTLOADER_BINS} esp32/libesp32.a rm -f ${TESTDIR}/template/version.txt + + print_status "Get the version of app from git describe. Project is not inside IDF and do not have a tag only a hash commit." + make >> log.log || failure "Failed to build" + version="App \"app-template\" version: " + version+=$(git describe --always --tags --dirty) + grep "${version}" log.log || failure "Project version should have a hash commit" print_status "Build fails if partitions don't fit in flash" sed -i.bak "s/CONFIG_ESPTOOLPY_FLASHSIZE.\+//" sdkconfig # remove all flashsize config diff --git a/tools/ci/test_build_system_cmake.sh b/tools/ci/test_build_system_cmake.sh index 46abc89d5..3fb5cb103 100755 --- a/tools/ci/test_build_system_cmake.sh +++ b/tools/ci/test_build_system_cmake.sh @@ -107,8 +107,19 @@ function run_tests() idf.py build || failure "Failed to rebuild with changed app version" assert_rebuilt ${APP_BINS} assert_not_rebuilt ${BOOTLOADER_BINS} esp-idf/esp32/libesp32.a + + print_status "Re-building does not change app.bin" + take_build_snapshot + idf.py build + assert_not_rebuilt ${APP_BINS} ${BOOTLOADER_BINS} esp-idf/esp32/libesp32.a rm -f ${TESTDIR}/template/version.txt + print_status "Get the version of app from git describe. Project is not inside IDF and do not have a tag only a hash commit." + idf.py build >> log.log || failure "Failed to build" + version="Project version: " + version+=$(git describe --always --tags --dirty) + grep "${version}" log.log || failure "Project version should have a hash commit" + print_status "Moving BUILD_DIR_BASE out of tree" clean_build_dir OUTOFTREE_BUILD=${TESTDIR}/alt_build