Index: third_party/WebKit/LayoutTests/storage/indexeddb/delete-range-count.html |
diff --git a/third_party/WebKit/LayoutTests/storage/indexeddb/delete-range-count.html b/third_party/WebKit/LayoutTests/storage/indexeddb/delete-range-count.html |
new file mode 100644 |
index 0000000000000000000000000000000000000000..32e31735256a630363d1636e0e135ae5af2cc60a |
--- /dev/null |
+++ b/third_party/WebKit/LayoutTests/storage/indexeddb/delete-range-count.html |
@@ -0,0 +1,67 @@ |
+<!DOCTYPE html> |
+<title>IndexedDB: UpgradeNeeded Tests</title> |
+<script src="../../resources/testharness.js"></script> |
+<script src="../../resources/testharnessreport.js"></script> |
+<script> |
+ |
+function delete_count(tests, description) { |
+ async_test(function(t) { |
+ var dbname = location.pathname + ' - ' + description; |
+ var deleteRequest = indexedDB.deleteDatabase(dbname); |
+ deleteRequest.onsuccess = t.step_func(function(){ |
cmumford
2016/05/19 17:07:16
space before {
palakj1
2016/05/19 23:47:52
Done
|
+ var openRequest = indexedDB.open(dbname); |
+ openRequest.onupgradeneeded= t.step_func(function(e) { |
cmumford
2016/05/19 17:07:16
space before =
palakj1
2016/05/19 23:47:53
Done
|
+ var db = e.target.result; |
+ db.createObjectStore('store'); |
+ }); |
+ openRequest.onsuccess = t.step_func(function(e) { |
+ var db = e.target.result; |
+ trans = db.transaction('store', 'readwrite'); |
cmumford
2016/05/19 17:07:16
var before |trans| and |store| and |i| to prevent
palakj1
2016/05/19 23:47:52
Done
|
+ store = trans.objectStore('store'); |
+ for (i = 1; i <= 10; ++i) { |
+ store.put(i,i); |
+ } |
+ var test = tests[0], test1 = tests[1]; |
dmurph
2016/05/19 01:01:39
This is confusing, don't you just want to use the
palakj1
2016/05/19 23:47:53
tests[0] and tests[1] used here might be different
|
+ deleteRequest = store.delete(IDBKeyRange.bound( |
+ test.lower , |
cmumford
2016/05/19 17:07:16
no space before ,
palakj1
2016/05/19 23:47:52
Done
|
+ test.upper , |
+ test.lowerOpen , |
+ test.upperOpen )); |
+ deleteRequestRepeat = store.delete(IDBKeyRange.bound( |
dmurph
2016/05/19 01:01:39
So repeat the same request again, same arguments,
palakj1
2016/05/19 23:47:52
Resolved below
|
+ test1.lower , |
+ test1.upper , |
+ test1.lowerOpen , |
+ test1.upperOpen )); |
+ deleteRequest.onsuccess = t.step_func(function(e) { |
+ var delete_count = e.target.result; |
+ assert_equals(delete_count, test.expected, 'Delete Count'); |
+ }); |
+ deleteRequestRepeat.onsuccess = t.step_func(function(e) { |
+ var delete_count = e.target.result; |
+ assert_equals(delete_count, test1.expected, 'Records already been deleted'); |
dmurph
2016/05/19 01:01:39
This should be 0, correct?
palakj1
2016/05/19 23:47:53
One of my tests have overlapping intervals test =
|
+ t.done(); |
+ }); |
+ }); |
+ openRequest.onerror = t.unreached_func('open failed'); |
+ }); |
+ }, description); |
+} |
+ |
+(function(){ |
+ var tests = [ |
+ [{ lower: 3, upper: 4, lowerOpen: false, upperOpen: false, expected: 2}, |
+ { lower: 1, upper: 5, lowerOpen: false, upperOpen: false, expected: 3} |
+ ], |
+ [{ lower: 3, upper: 8, lowerOpen: true, upperOpen: false, expected: 5}, |
+ { lower: 3, upper: 8, lowerOpen: true, upperOpen: false, expected: 0} |
+ ]]; |
+ |
+ delete_count(tests[0], 'Delete Range : Overlapping Intervals'); |
cmumford
2016/05/19 17:07:16
no space before :
|
+ delete_count(tests[1], 'Delete Range: Repeated Intervals'); |
+}()); |
+ |
+ |
+ |
+ |
+ |
+</script> |