Bug 60733

Summary: Port Mozilla's IndexedDB tests: indexes with keys and key ranges
Product: WebKit Reporter: Mark Pilgrim (Google) <pilgrim>
Component: New BugsAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, dgrogan, fishd, hans, pilgrim, tony
Priority: P3    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Mark Pilgrim (Google) 2011-05-12 15:28:39 PDT
Original test: http://mxr.mozilla.org/mozilla2.0/source/dom/indexedDB/test/test_indexes.html?force=1

This is a port of a test from Mozilla's IndexedDB test suite. It creates an object store with several rows of data, creates indexes on each key, then iterates each index in a variety of ways (keys, key ranges, etc).

Variations that WebKit fails have been split out into separate tests. This is what remains, which WebKit passes.
Comment 1 Mark Pilgrim (Google) 2011-05-12 15:35:32 PDT
Created attachment 93358 [details]
Patch
Comment 2 Tony Chang 2011-05-13 09:31:51 PDT
Comment on attachment 93358 [details]
Patch

I think this is fine, but a couple questions:
- Are the results deterministic?  It looks like multiple database queries get queued up.  Will they always get resolved in the same order?
- How long does this test take to run?
Comment 3 Mark Pilgrim (Google) 2011-05-13 09:53:38 PDT
In my testing the results are deterministic and nowhere near the timeout threshold. Less than one second on my poor old laptop.
Comment 4 Tony Chang 2011-05-13 12:12:55 PDT
Comment on attachment 93358 [details]
Patch

Ok, I suspect this is fine because queries always get answered in the order they come in.  Ideally, tests should be only tens of ms, but under a second isn't terrible.
Comment 5 WebKit Commit Bot 2011-05-13 13:23:08 PDT
Comment on attachment 93358 [details]
Patch

Clearing flags on attachment: 93358

Committed r86457: <http://trac.webkit.org/changeset/86457>
Comment 6 WebKit Commit Bot 2011-05-13 13:23:14 PDT
All reviewed patches have been landed.  Closing bug.