| Index: webkit/glue/glue_serialize_unittest.cc
|
| diff --git a/webkit/glue/glue_serialize_unittest.cc b/webkit/glue/glue_serialize_unittest.cc
|
| index 49672b6dd3c847f4877077b96bd30ebb89fb484b..306a0f5184731bfcd0b63c1e3421b7a704cc5d41 100644
|
| --- a/webkit/glue/glue_serialize_unittest.cc
|
| +++ b/webkit/glue/glue_serialize_unittest.cc
|
| @@ -62,13 +62,15 @@ class GlueSerializeTest : public testing::Test {
|
| item.setScrollOffset(WebPoint(42, -42));
|
| item.setIsTargetItem(true);
|
| item.setVisitCount(42*42);
|
| + item.setPageScaleFactor(2.0f);
|
| + item.setItemSequenceNumber(123);
|
| + item.setDocumentSequenceNumber(456);
|
|
|
| WebVector<WebString> document_state(size_t(3));
|
| document_state[0] = WebString::fromUTF8("state1");
|
| document_state[1] = WebString::fromUTF8("state2");
|
| document_state[2] = WebString::fromUTF8("state AWESOME");
|
| item.setDocumentState(document_state);
|
| - item.setPageScaleFactor(1.0f);
|
|
|
| // Form Data
|
| if (with_form_data) {
|
| @@ -96,14 +98,16 @@ class GlueSerializeTest : public testing::Test {
|
|
|
| // Checks that a == b.
|
| void HistoryItemExpectEqual(const WebHistoryItem& a,
|
| - const WebHistoryItem& b) {
|
| - HistoryItemExpectBaseDataEqual(a, b);
|
| + const WebHistoryItem& b,
|
| + int version) {
|
| + HistoryItemExpectBaseDataEqual(a, b, version);
|
| HistoryItemExpectFormDataEqual(a, b);
|
| HistoryItemExpectChildrenEqual(a, b);
|
| }
|
|
|
| void HistoryItemExpectBaseDataEqual(const WebHistoryItem& a,
|
| - const WebHistoryItem& b) {
|
| + const WebHistoryItem& b,
|
| + int version) {
|
| EXPECT_EQ(string16(a.urlString()), string16(b.urlString()));
|
| EXPECT_EQ(string16(a.originalURLString()), string16(b.originalURLString()));
|
| EXPECT_EQ(string16(a.target()), string16(b.target()));
|
| @@ -115,7 +119,12 @@ class GlueSerializeTest : public testing::Test {
|
| EXPECT_EQ(a.isTargetItem(), b.isTargetItem());
|
| EXPECT_EQ(a.visitCount(), b.visitCount());
|
| EXPECT_EQ(string16(a.referrer()), string16(b.referrer()));
|
| - EXPECT_EQ(a.pageScaleFactor(), b.pageScaleFactor());
|
| + if (version >= 11)
|
| + EXPECT_EQ(a.pageScaleFactor(), b.pageScaleFactor());
|
| + if (version >= 9)
|
| + EXPECT_EQ(a.itemSequenceNumber(), b.itemSequenceNumber());
|
| + if (version >= 6)
|
| + EXPECT_EQ(a.documentSequenceNumber(), b.documentSequenceNumber());
|
|
|
| const WebVector<WebString>& a_docstate = a.documentState();
|
| const WebVector<WebString>& b_docstate = b.documentState();
|
| @@ -153,7 +162,8 @@ class GlueSerializeTest : public testing::Test {
|
| const WebVector<WebHistoryItem>& b_children = b.children();
|
| EXPECT_EQ(a_children.size(), b_children.size());
|
| for (size_t i = 0, c = a_children.size(); i < c; ++i)
|
| - HistoryItemExpectEqual(a_children[i], b_children[i]);
|
| + HistoryItemExpectEqual(a_children[i], b_children[i],
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| }
|
| };
|
|
|
| @@ -162,15 +172,15 @@ class GlueSerializeTest : public testing::Test {
|
| TEST_F(GlueSerializeTest, BackwardsCompatibleTest) {
|
| const WebHistoryItem& item = MakeHistoryItem(false, false);
|
|
|
| - // Make sure version 12 (current version) can read versions 1 through 11.
|
| - for (int i = 1; i <= 11; i++) {
|
| + // Make sure current version can read all previous versions.
|
| + for (int i = 1; i < webkit_glue::HistoryItemCurrentVersion(); i++) {
|
| std::string serialized_item;
|
| webkit_glue::HistoryItemToVersionedString(item, i, &serialized_item);
|
| const WebHistoryItem& deserialized_item =
|
| webkit_glue::HistoryItemFromString(serialized_item);
|
| ASSERT_FALSE(item.isNull());
|
| ASSERT_FALSE(deserialized_item.isNull());
|
| - HistoryItemExpectEqual(item, deserialized_item);
|
| + HistoryItemExpectEqual(item, deserialized_item, i);
|
| }
|
| }
|
|
|
| @@ -184,7 +194,8 @@ TEST_F(GlueSerializeTest, HistoryItemSerializeTest) {
|
|
|
| ASSERT_FALSE(item.isNull());
|
| ASSERT_FALSE(deserialized_item.isNull());
|
| - HistoryItemExpectEqual(item, deserialized_item);
|
| + HistoryItemExpectEqual(item, deserialized_item,
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| }
|
|
|
| // Checks that broken messages don't take out our process.
|
| @@ -236,7 +247,8 @@ TEST_F(GlueSerializeTest, RemoveFormData) {
|
| ASSERT_FALSE(item1.isNull());
|
| ASSERT_FALSE(item2.isNull());
|
|
|
| - HistoryItemExpectBaseDataEqual(item1, item2);
|
| + HistoryItemExpectBaseDataEqual(item1, item2,
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| HistoryItemExpectChildrenEqual(item1, item2);
|
|
|
| // Form data was removed, but the identifier was kept.
|
| @@ -279,7 +291,8 @@ TEST_F(GlueSerializeTest, HistoryItemWithPasswordsSerializeTest) {
|
|
|
| ASSERT_FALSE(item.isNull());
|
| ASSERT_FALSE(deserialized_item.isNull());
|
| - HistoryItemExpectEqual(item, deserialized_item);
|
| + HistoryItemExpectEqual(item, deserialized_item,
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| }
|
|
|
| TEST_F(GlueSerializeTest, RemovePasswordData) {
|
| @@ -293,7 +306,8 @@ TEST_F(GlueSerializeTest, RemovePasswordData) {
|
| ASSERT_FALSE(item1.isNull());
|
| ASSERT_FALSE(item2.isNull());
|
|
|
| - HistoryItemExpectBaseDataEqual(item1, item2);
|
| + HistoryItemExpectBaseDataEqual(item1, item2,
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| HistoryItemExpectChildrenEqual(item1, item2);
|
|
|
| // Form data was removed, but the identifier was kept.
|
| @@ -318,7 +332,8 @@ TEST_F(GlueSerializeTest, RemovePasswordDataWithNoPasswordData) {
|
| ASSERT_FALSE(item2.isNull());
|
|
|
| // Form data was not removed.
|
| - HistoryItemExpectEqual(item1, item2);
|
| + HistoryItemExpectEqual(item1, item2,
|
| + webkit_glue::HistoryItemCurrentVersion());
|
| }
|
|
|
| } // namespace
|
|
|