11f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com/*
21f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com * Copyright 2013 Google Inc.
31f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com *
41f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com * Use of this source code is governed by a BSD-style license that can be
51f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com * found in the LICENSE file.
61f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com */
71f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com#include "SkRTConf.h"
81f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com#include "Test.h"
91f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com
101f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.comSK_CONF_DECLARE(int, c_RTConfTestVariable,
111f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com                "test.utils.rtconf.testVariable", 1,
121f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com                "This is only a test. Do not be alarmed.");
131f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com// TODO(skia-team): more comprehensive unit tests of the SkRTConf
141f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com// system.
151f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.comDEF_TEST(RuntimeConfig, reporter) {
161f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    REPORTER_ASSERT(reporter, 1 == c_RTConfTestVariable);
171f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com
181f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    SK_CONF_SET("test.utils.rtconf.testVariable", 2);
191f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com#ifdef SK_DEVELOPER
201f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    REPORTER_ASSERT(reporter, 2 == c_RTConfTestVariable);
211f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com#else  // not SK_DEVELOPER
221f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    // Can not change RTConf variables in Release.
231f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    REPORTER_ASSERT(reporter, 1 == c_RTConfTestVariable);
241f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com#endif  // SK_DEVELOPER
251f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com
261f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    // This should not give a warning.
271f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com    SK_CONF_TRY_SET("test.utils.rtconf.nonexistentVariable", 7);
281f0121af495e5a70ecff2521729b7749c81a20b2halcanary@google.com}
29