Implementing chrome://thumbnails page to view URLs in TopSites and cached thumbnails.
[chromium-blink-merge.git] / sync / js / js_arg_list_unittest.cc
blob2a10286751bda214c553c7478042453d3b2bb124
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "sync/js/js_arg_list.h"
7 #include "base/memory/scoped_ptr.h"
8 #include "testing/gtest/include/gtest/gtest.h"
10 namespace syncer {
11 namespace {
13 class JsArgListTest : public testing::Test {};
15 TEST_F(JsArgListTest, EmptyList) {
16 JsArgList arg_list;
17 EXPECT_TRUE(arg_list.Get().empty());
18 EXPECT_EQ("[]", arg_list.ToString());
21 TEST_F(JsArgListTest, FromList) {
22 scoped_ptr<base::ListValue> list(new base::ListValue());
23 list->Append(new base::FundamentalValue(false));
24 list->Append(new base::FundamentalValue(5));
25 base::DictionaryValue* dict = new base::DictionaryValue();
26 list->Append(dict);
27 dict->SetString("foo", "bar");
28 dict->Set("baz", new base::ListValue());
30 scoped_ptr<base::ListValue> list_copy(list->DeepCopy());
32 JsArgList arg_list(list.get());
34 // |arg_list| should take over |list|'s data.
35 EXPECT_TRUE(list->empty());
36 EXPECT_TRUE(arg_list.Get().Equals(list_copy.get()));
39 } // namespace
40 } // namespace syncer