surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 1 | // |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 2 | // Copyright © 2017 Arm Ltd and Contributors. All rights reserved. |
David Beck | 93e4898 | 2018-09-05 13:05:09 +0100 | [diff] [blame] | 3 | // SPDX-License-Identifier: MIT |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 4 | // |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 5 | |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 6 | #include "DriverTestHelpers.hpp" |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 7 | #include <log/log.h> |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 8 | #include <SystemPropertiesUtils.hpp> |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 9 | |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 10 | DOCTEST_TEST_SUITE("SystemProperiesTests") |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame] | 11 | { |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 12 | |
| 13 | DOCTEST_TEST_CASE("SystemProperties") |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 14 | { |
| 15 | // Test default value |
| 16 | { |
| 17 | auto p = __system_property_find("thisDoesNotExist"); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 18 | DOCTEST_CHECK((p == nullptr)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 19 | |
| 20 | int defaultValue = ParseSystemProperty("thisDoesNotExist", -4); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 21 | DOCTEST_CHECK((defaultValue == -4)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 22 | } |
| 23 | |
| 24 | // Test default value from bad data type |
| 25 | { |
| 26 | __system_property_set("thisIsNotFloat", "notfloat"); |
| 27 | float defaultValue = ParseSystemProperty("thisIsNotFloat", 0.1f); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 28 | DOCTEST_CHECK((defaultValue == 0.1f)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 29 | } |
| 30 | |
| 31 | // Test fetching bool values |
| 32 | { |
| 33 | __system_property_set("myTestBool", "1"); |
| 34 | bool b = ParseSystemProperty("myTestBool", false); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 35 | DOCTEST_CHECK((b == true)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 36 | } |
| 37 | { |
| 38 | __system_property_set("myTestBool", "0"); |
| 39 | bool b = ParseSystemProperty("myTestBool", true); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 40 | DOCTEST_CHECK((b == false)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 41 | } |
| 42 | |
| 43 | // Test fetching int |
| 44 | { |
| 45 | __system_property_set("myTestInt", "567"); |
| 46 | int i = ParseSystemProperty("myTestInt", 890); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 47 | DOCTEST_CHECK((i==567)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 48 | } |
| 49 | |
| 50 | // Test fetching float |
| 51 | { |
| 52 | __system_property_set("myTestFloat", "1.2f"); |
| 53 | float f = ParseSystemProperty("myTestFloat", 3.4f); |
Mike Kelly | e2d611e | 2021-10-14 12:35:58 +0100 | [diff] [blame] | 54 | DOCTEST_CHECK((f==1.2f)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 55 | } |
| 56 | } |
| 57 | |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame] | 58 | } |