| // Copyright 2015 The Weave Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| #ifndef LIBWEAVE_SRC_COMMANDS_UNITTEST_UTILS_H_ |
| #define LIBWEAVE_SRC_COMMANDS_UNITTEST_UTILS_H_ |
| #include <weave/test/unittest_utils.h> |
| #include "src/commands/prop_types.h" |
| #include "src/commands/prop_values.h" |
| std::unique_ptr<const PropValue> make_prop_value(const base::Value& value) { |
| auto prop_type = PropType::Create(GetValueType<T>()); |
| return prop_type->CreatePropValue(value, nullptr); |
| inline std::unique_ptr<const PropValue> make_int_prop_value(int value) { |
| return make_prop_value<int>(base::FundamentalValue{value}); |
| inline std::unique_ptr<const PropValue> make_double_prop_value(double value) { |
| return make_prop_value<double>(base::FundamentalValue{value}); |
| inline std::unique_ptr<const PropValue> make_bool_prop_value(bool value) { |
| return make_prop_value<bool>(base::FundamentalValue{value}); |
| inline std::unique_ptr<const PropValue> make_string_prop_value( |
| const std::string& value) { |
| return make_prop_value<std::string>(base::StringValue{value}); |
| #endif // LIBWEAVE_SRC_COMMANDS_UNITTEST_UTILS_H_ |