diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/RuntimeConfigTest.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/RuntimeConfigTest.cpp b/tests/RuntimeConfigTest.cpp new file mode 100644 index 0000000000..b2e179cfff --- /dev/null +++ b/tests/RuntimeConfigTest.cpp @@ -0,0 +1,29 @@ +/* + * Copyright 2013 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ +#include "SkRTConf.h" +#include "Test.h" +#include "TestClassDef.h" + +SK_CONF_DECLARE(int, c_RTConfTestVariable, + "test.utils.rtconf.testVariable", 1, + "This is only a test. Do not be alarmed."); +// TODO(skia-team): more comprehensive unit tests of the SkRTConf +// system. +DEF_TEST(RuntimeConfig, reporter) { + REPORTER_ASSERT(reporter, 1 == c_RTConfTestVariable); + + SK_CONF_SET("test.utils.rtconf.testVariable", 2); +#ifdef SK_DEVELOPER + REPORTER_ASSERT(reporter, 2 == c_RTConfTestVariable); +#else // not SK_DEVELOPER + // Can not change RTConf variables in Release. + REPORTER_ASSERT(reporter, 1 == c_RTConfTestVariable); +#endif // SK_DEVELOPER + + // This should not give a warning. + SK_CONF_TRY_SET("test.utils.rtconf.nonexistentVariable", 7); +} |