aboutsummaryrefslogtreecommitdiff
path: root/test/SystemProperties.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/SystemProperties.cpp')
-rw-r--r--test/SystemProperties.cpp57
1 files changed, 57 insertions, 0 deletions
diff --git a/test/SystemProperties.cpp b/test/SystemProperties.cpp
new file mode 100644
index 00000000..9bdf151e
--- /dev/null
+++ b/test/SystemProperties.cpp
@@ -0,0 +1,57 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// See LICENSE file in the project root for full license information.
+//
+#include "DriverTestHelpers.hpp"
+#include <boost/test/unit_test.hpp>
+#include <log/log.h>
+#include "../SystemPropertiesUtils.hpp"
+
+BOOST_AUTO_TEST_SUITE(SystemProperiesTests)
+
+BOOST_AUTO_TEST_CASE(SystemProperties)
+{
+ // Test default value
+ {
+ auto p = __system_property_find("thisDoesNotExist");
+ BOOST_TEST((p == nullptr));
+
+ int defaultValue = ParseSystemProperty("thisDoesNotExist", -4);
+ BOOST_TEST((defaultValue == -4));
+ }
+
+ // Test default value from bad data type
+ {
+ __system_property_set("thisIsNotFloat", "notfloat");
+ float defaultValue = ParseSystemProperty("thisIsNotFloat", 0.1f);
+ BOOST_TEST((defaultValue == 0.1f));
+ }
+
+ // Test fetching bool values
+ {
+ __system_property_set("myTestBool", "1");
+ bool b = ParseSystemProperty("myTestBool", false);
+ BOOST_TEST((b == true));
+ }
+ {
+ __system_property_set("myTestBool", "0");
+ bool b = ParseSystemProperty("myTestBool", true);
+ BOOST_TEST((b == false));
+ }
+
+ // Test fetching int
+ {
+ __system_property_set("myTestInt", "567");
+ int i = ParseSystemProperty("myTestInt", 890);
+ BOOST_TEST((i==567));
+ }
+
+ // Test fetching float
+ {
+ __system_property_set("myTestFloat", "1.2f");
+ float f = ParseSystemProperty("myTestFloat", 3.4f);
+ BOOST_TEST((f==1.2f));
+ }
+}
+
+BOOST_AUTO_TEST_SUITE_END()