diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
commit | 6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2 (patch) | |
tree | d9c68d1cca0b3e352f1e438561f3e504e641a08f /Source/WebKit/chromium/tests/IDBKeyPathTest.cpp | |
parent | d0424a769059c84ae20beb3c217812792ea6726b (diff) | |
download | qtwebkit-6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2.tar.gz |
Imported WebKit commit c7503cef7ecb236730d1309676ab9fc723fd061d (http://svn.webkit.org/repository/webkit/trunk@128886)
New snapshot with various build fixes
Diffstat (limited to 'Source/WebKit/chromium/tests/IDBKeyPathTest.cpp')
-rw-r--r-- | Source/WebKit/chromium/tests/IDBKeyPathTest.cpp | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/Source/WebKit/chromium/tests/IDBKeyPathTest.cpp b/Source/WebKit/chromium/tests/IDBKeyPathTest.cpp index c3d47d788..cd240cc94 100644 --- a/Source/WebKit/chromium/tests/IDBKeyPathTest.cpp +++ b/Source/WebKit/chromium/tests/IDBKeyPathTest.cpp @@ -127,92 +127,6 @@ TEST(IDBKeyPathTest, InvalidKeyPath5) checkKeyPath(keyPath, expected, 3); } -TEST(IDBKeyPathTest, Extract) -{ - IDBKeyPath keyPath("foo"); - RefPtr<IDBKey> stringZooKey(IDBKey::createString("zoo")); - RefPtr<IDBKey> invalidKey(IDBKey::createInvalid()); - RefPtr<SerializedScriptValue> ssv; - RefPtr<IDBKey> result; - - // keypath: "foo", value: {foo: "zoo"}, expected: "zoo" - UChar dataFooZoo[] = {0x0353, 0x6f66, 0x536f, 0x7a03, 0x6f6f, 0x017b}; - ssv = SerializedScriptValue::createFromWire(String(dataFooZoo, WTF_ARRAY_LENGTH(dataFooZoo))); - result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_TRUE(stringZooKey->isEqual(result.get())); - - // keypath: "foo", value: {foo: null}, expected: invalid - UChar dataFooNull[] = {0x0353, 0x6f66, 0x306f, 0x017b}; - ssv = SerializedScriptValue::createFromWire(String(dataFooNull, WTF_ARRAY_LENGTH(dataFooNull))); - result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_FALSE(result->isValid()); - - // keypath: "foo", value: {}, expected: null - UChar dataObject[] = {0x017b}; - ssv = SerializedScriptValue::createFromWire(String(dataObject, WTF_ARRAY_LENGTH(dataObject))); - result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_EQ(0, result.get()); - - // keypath: "foo", value: null, expected: null - ssv = SerializedScriptValue::nullValue(); - result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_EQ(0, result.get()); -} - -TEST(IDBKeyPathTest, IDBKeyPathPropertyNotAvailable) -{ - IDBKeyPath keyPath("PropertyNotAvailable"); - RefPtr<SerializedScriptValue> ssv; - // {foo: "zoo", bar: null} - UChar data[] = {0x0353, 0x6f66, 0x536f, 0x7a03, 0x6f6f, 0x0353, 0x6162, - 0x3072, 0x027b}; - ssv = SerializedScriptValue::createFromWire(String(data, WTF_ARRAY_LENGTH(data))); - RefPtr<IDBKey> result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_EQ(0, result.get()); - - // null - ssv = SerializedScriptValue::nullValue(); - result = createIDBKeyFromSerializedValueAndKeyPath(ssv, keyPath); - EXPECT_EQ(0, result.get()); -} - -TEST(IDBKeyPathTest, InjectIDBKey) -{ - // {foo: 'zoo'} - const UChar initialData[] = {0x0353, 0x6f66, 0x536f, 0x7a03, 0x6f6f, 0x017b}; - RefPtr<SerializedScriptValue> value = SerializedScriptValue::createFromWire(String(initialData, WTF_ARRAY_LENGTH(initialData))); - - RefPtr<IDBKey> key = IDBKey::createString("myNewKey"); - IDBKeyPath keyPath("bar"); - - // {foo: 'zoo', bar: 'myNewKey'} - const UChar expectedData[] = {0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6603, - 0x6f6f, 0x013f, 0x0353, 0x6f7a, 0x3f6f, - 0x5301, 0x6203, 0x7261, 0x013f, 0x0853, - 0x796d, 0x654e, 0x4b77, 0x7965, 0x027b}; - RefPtr<SerializedScriptValue> expectedValue = - SerializedScriptValue::createFromWire(String(expectedData, WTF_ARRAY_LENGTH(expectedData))); - RefPtr<SerializedScriptValue> result = injectIDBKeyIntoSerializedValue(key, value, keyPath); - EXPECT_EQ(expectedValue->toWireString(), result->toWireString()); - - // Should fail - can't apply properties to string value of key foo - keyPath = IDBKeyPath("foo.bad.path"); - result = injectIDBKeyIntoSerializedValue(key, value, keyPath); - EXPECT_EQ(0, result.get()); - - // {foo: 'zoo', bar: {baz: 'myNewKey'}} - const UChar expectedData2[] = {0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6603, - 0x6f6f, 0x013f, 0x0353, 0x6f7a, 0x3f6f, - 0x5301, 0x6203, 0x7261, 0x013f, 0x3f6f, - 0x5302, 0x6203, 0x7a61, 0x023f, 0x0853, - 0x796d, 0x654e, 0x4b77, 0x7965, 0x017b, - 0x027b}; - RefPtr<SerializedScriptValue> expectedValue2 = SerializedScriptValue::createFromWire(String(expectedData2, WTF_ARRAY_LENGTH(expectedData2))); - keyPath = IDBKeyPath("bar.baz"); - result = injectIDBKeyIntoSerializedValue(key, value, keyPath); - EXPECT_EQ(expectedValue2->toWireString(), result->toWireString()); -} - } // namespace #endif // ENABLE(INDEXED_DATABASE) |