~ubuntu-branches/ubuntu/wily/aria2/wily-proposed

« back to all changes in this revision

Viewing changes to test/ValueBaseTest.cc

  • Committer: Package Import Robot
  • Author(s): Kartik Mistry, Kartik Mistry, Patrick Ruckstuhl
  • Date: 2013-09-22 18:52:14 UTC
  • mfrom: (2.5.19 sid)
  • Revision ID: package-import@ubuntu.com-20130922185214-upeu2ljgeqi7e7oo
Tags: 1.18.0-1
[ Kartik Mistry ]
* New upstream release.
* debian/control:
  + (really) Set priority to optional from extra (Closes: #697659).
  + wrap-and-sort some fields.

[ Patrick Ruckstuhl ]
* debian/rules:
  + Allow parallel building (Closes: #720977)
* debian/tests, debian/control:
  + autopkgtest infrastructure

Show diffs side-by-side

added added

removed removed

Lines of Context:
65
65
  CPPUNIT_ASSERT(x);
66
66
  CPPUNIT_ASSERT_EQUAL(static_cast<Integer::ValueType>(100), x->i());
67
67
  CPPUNIT_ASSERT(!downcast<String>(&integer));
68
 
  SharedHandle<Integer> si(new Integer(101));
 
68
  std::shared_ptr<Integer> si(new Integer(101));
69
69
  const Integer* x2 = downcast<Integer>(si);
70
70
  CPPUNIT_ASSERT_EQUAL(static_cast<Integer::ValueType>(101), x2->i());
71
71
 
87
87
  Dict dict;
88
88
  CPPUNIT_ASSERT(dict.empty());
89
89
 
90
 
  dict["ki"] = Integer::g(7);
91
 
  dict["ks"] = String::g("abc");
 
90
  dict.put("ki", Integer::g(7));
 
91
  dict.put("ks", String::g("abc"));
92
92
 
93
93
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), dict.size());
94
94
  CPPUNIT_ASSERT(dict.containsKey("ki"));
98
98
  CPPUNIT_ASSERT_EQUAL(std::string("abc"),
99
99
                       downcast<String>(dict["ks"])->s());
100
100
 
101
 
  CPPUNIT_ASSERT(!dict["kn"]); // This adds kn key with default value.
102
 
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(3), dict.size());
103
 
  CPPUNIT_ASSERT(dict.containsKey("kn"));
 
101
  CPPUNIT_ASSERT(!dict["kn"]); // This does not adds kn key
 
102
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), dict.size());
104
103
 
105
 
  const Dict& ref = dict;
 
104
  auto& ref = dict;
106
105
  ref["kn2"]; // This doesn't add kn2 key.
107
 
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(3), ref.size());
 
106
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), ref.size());
108
107
  CPPUNIT_ASSERT(!ref.containsKey("kn2"));
109
108
 
110
 
  dict.removeKey("kn");
111
 
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(2), dict.size());
112
 
  CPPUNIT_ASSERT(!dict.containsKey("kn"));
 
109
  dict.removeKey("ks");
 
110
  CPPUNIT_ASSERT_EQUAL(static_cast<size_t>(1), dict.size());
 
111
  CPPUNIT_ASSERT(!dict.containsKey("ks"));
 
112
 
 
113
  auto ki = dict.popValue("ki");
 
114
  CPPUNIT_ASSERT_EQUAL(Integer::ValueType{7}, downcast<Integer>(ki)->i());
 
115
  CPPUNIT_ASSERT(dict.empty());
 
116
  CPPUNIT_ASSERT(!dict.containsKey("ki"));
113
117
}
114
118
 
115
119
void ValueBaseTest::testDictIter()
116
120
{
117
121
  Dict dict;
118
 
  dict["alpha2"] = String::g("alpha2");
119
 
  dict["charlie"] = String::g("charlie");
120
 
  dict["bravo"] = String::g("bravo");
121
 
  dict["alpha"] = String::g("alpha");
 
122
  dict.put("alpha2", String::g("alpha2"));
 
123
  dict.put("charlie", String::g("charlie"));
 
124
  dict.put("bravo", String::g("bravo"));
 
125
  dict.put("alpha", String::g("alpha"));
122
126
 
123
127
  Dict::ValueType::iterator i = dict.begin();
124
128
  CPPUNIT_ASSERT_EQUAL(std::string("alpha"), (*i++).first);