Chromium Code Reviews| Index: chromeos/dbus/ibus/ibus_object_unittest.cc |
| diff --git a/chromeos/dbus/ibus/ibus_object_unittest.cc b/chromeos/dbus/ibus/ibus_object_unittest.cc |
| index b4cd2bbdbed25dd21d6dd258a42e58395d7dbae1..c12fac68ca1f88fda7ab2e896b345f543e83e36f 100644 |
| --- a/chromeos/dbus/ibus/ibus_object_unittest.cc |
| +++ b/chromeos/dbus/ibus/ibus_object_unittest.cc |
| @@ -22,12 +22,16 @@ TEST(IBusObjectTest, WriteReadTest) { |
| const char kSampleText1[] = "Sample Text 1"; |
| const char kSampleText2[] = "Sample Text 2"; |
| const uint32 kSampleUint32 = 12345UL; |
| + const int32 kSampleInt32 = 54321; |
| + const bool kSampleBool = false; |
| const uint32 kSampleArrayOfUint32Count = 10UL; |
| // Create ibus object. |
| - IBusObjectWriter ibus_object_writer(kSampleTypeName1, "suauv", &writer); |
| + IBusObjectWriter ibus_object_writer(kSampleTypeName1, "suibauv", &writer); |
| ibus_object_writer.AppendString(kSampleText1); |
| ibus_object_writer.AppendUint32(kSampleUint32); |
| + ibus_object_writer.AppendInt32(kSampleInt32); |
| + ibus_object_writer.AppendBool(kSampleBool); |
| dbus::MessageWriter array_writer(NULL); |
| ibus_object_writer.OpenArray("u", &array_writer); |
| for (uint32 i = 0; i < kSampleArrayOfUint32Count; ++i) |
| @@ -50,7 +54,15 @@ TEST(IBusObjectTest, WriteReadTest) { |
| uint32 expected_uint32; |
| ASSERT_TRUE(ibus_object_reader.PopUint32(&expected_uint32)); |
| EXPECT_EQ(kSampleUint32, expected_uint32); |
| - // Check the third value which is array of uint32. |
| + // Check the third int value. |
| + int32 expected_int32; |
|
satorux1
2012/05/18 01:23:36
initialize this with 0. Please fix other uninitial
Seigo Nonaka
2012/05/18 01:41:52
Done.
|
| + ASSERT_TRUE(ibus_object_reader.PopInt32(&expected_int32)); |
| + EXPECT_EQ(kSampleInt32, expected_int32); |
| + // Check the fourth boolean value. |
| + bool expected_bool; |
| + ASSERT_TRUE(ibus_object_reader.PopBool(&expected_bool)); |
| + EXPECT_EQ(kSampleBool, expected_bool); |
| + // Check the fifth value which is array of uint32. |
| dbus::MessageReader array_reader(NULL); |
| ASSERT_TRUE(ibus_object_reader.PopArray(&array_reader)); |
| for (uint32 i = 0; i < kSampleArrayOfUint32Count; ++i) { |
| @@ -58,7 +70,7 @@ TEST(IBusObjectTest, WriteReadTest) { |
| ASSERT_TRUE(array_reader.PopUint32(&expected_uint32)); |
| EXPECT_EQ(i, expected_uint32); |
| } |
| - // Check the fourth value which is IBusObject. |
| + // Check the sixth value which is IBusObject. |
| IBusObjectReader ibus_nested_object_reader(kSampleTypeName2, NULL); |
| ibus_object_reader.PopIBusObject(&ibus_nested_object_reader); |
| std::string expected_text2; |
| @@ -87,4 +99,48 @@ TEST(IBusObjectTest, EmptyEntryTest) { |
| EXPECT_FALSE(ibus_object_reader.HasMoreData()); |
| } |
| +TEST(IBusObjctTest, WriteWithGetContentsWriterTest) { |
| + const char kSampleTypeName[] = "IBusObject Name"; |
| + const char kSampleText[] = "Sample Text 1"; |
| + scoped_ptr<dbus::Response> message(dbus::Response::CreateEmpty()); |
| + |
| + // Write string by writer given by GetContentsWriter. |
| + dbus::MessageWriter writer(message.get()); |
| + IBusObjectWriter ibus_object_writer(kSampleTypeName, "s", &writer); |
| + dbus::MessageWriter* contents_writer = ibus_object_writer.GetContentsWriter(); |
| + ASSERT_TRUE(contents_writer); |
| + contents_writer->AppendString(kSampleText); |
| + ibus_object_writer.CloseAll(); |
| + |
| + // Read by IBusObjectReader to make sure string exists in same field. |
| + dbus::MessageReader reader(message.get()); |
| + IBusObjectReader ibus_object_reader(kSampleTypeName, &reader); |
| + ASSERT_TRUE(ibus_object_reader.Init()); |
| + std::string actual_value; |
| + ASSERT_TRUE(ibus_object_reader.PopString(&actual_value)); |
| + EXPECT_EQ(kSampleText, actual_value); |
| +} |
| + |
| +TEST(IBusObjctTest, ReadWithGetContentsReaderTest) { |
| + const char kSampleTypeName[] = "IBusObject Name"; |
| + const char kSampleText[] = "Sample Text 1"; |
| + scoped_ptr<dbus::Response> message(dbus::Response::CreateEmpty()); |
| + |
| + // Write string by IBusObject. |
| + dbus::MessageWriter writer(message.get()); |
| + IBusObjectWriter ibus_object_writer(kSampleTypeName, "s", &writer); |
| + ibus_object_writer.AppendString(kSampleText); |
| + ibus_object_writer.CloseAll(); |
| + |
| + // Read string by reader given by GetContentsReader. |
| + dbus::MessageReader reader(message.get()); |
| + IBusObjectReader ibus_object_reader(kSampleTypeName, &reader); |
| + ASSERT_TRUE(ibus_object_reader.Init()); |
| + dbus::MessageReader* contents_reader = ibus_object_reader.GetContentsReader(); |
| + ASSERT_TRUE(contents_reader); |
| + std::string actual_value; |
| + ASSERT_TRUE(contents_reader->PopString(&actual_value)); |
| + EXPECT_EQ(kSampleText, actual_value); |
| +} |
| + |
| } // namespace chromeos |