surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 1 | // |
| 2 | // Copyright © 2017 Arm Ltd. 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 | // |
| 5 | #include "DriverTestHelpers.hpp" |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 6 | #include <log/log.h> |
| 7 | #include "../SystemPropertiesUtils.hpp" |
| 8 | |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 9 | #include <doctest/doctest.h> |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 10 | |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 11 | TEST_SUITE("SystemProperiesTests") |
| 12 | { |
| 13 | 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"); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 18 | CHECK((p == nullptr)); |
surmeh01 | 49b9e10 | 2018-05-17 14:11:25 +0100 | [diff] [blame] | 19 | |
| 20 | int defaultValue = ParseSystemProperty("thisDoesNotExist", -4); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 21 | 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); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 28 | 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); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 35 | 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); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 40 | 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); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 47 | 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); |
Sadik Armagan | 9150bff | 2021-05-26 15:40:53 +0100 | [diff] [blame^] | 54 | 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 | } |