test_put_get_values.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. /**
  2. * Any copyright is dedicated to the Public Domain.
  3. * http://creativecommons.org/publicdomain/zero/1.0/
  4. */
  5. var testGenerator = testSteps();
  6. function testSteps()
  7. {
  8. const name = this.window ? window.location.pathname : "Splendid Test";
  9. const objectStoreName = "Objects";
  10. let testString = { key: 0, value: "testString" };
  11. let testInt = { key: 1, value: 1002 };
  12. let request = indexedDB.open(name, 1);
  13. request.onerror = errorHandler;
  14. request.onupgradeneeded = grabEventAndContinueHandler;
  15. request.onsuccess = grabEventAndContinueHandler;
  16. let event = yield undefined;
  17. let db = event.target.result;
  18. let objectStore = db.createObjectStore(objectStoreName,
  19. { autoIncrement: 0 });
  20. request = objectStore.add(testString.value, testString.key);
  21. request.onerror = errorHandler;
  22. request.onsuccess = function(event) {
  23. is(event.target.result, testString.key, "Got the right key");
  24. request = objectStore.get(testString.key);
  25. request.onerror = errorHandler;
  26. request.onsuccess = function(event) {
  27. is(event.target.result, testString.value, "Got the right value");
  28. };
  29. };
  30. request = objectStore.add(testInt.value, testInt.key);
  31. request.onerror = errorHandler;
  32. request.onsuccess = function(event) {
  33. is(event.target.result, testInt.key, "Got the right key");
  34. request = objectStore.get(testInt.key);
  35. request.onerror = errorHandler;
  36. request.onsuccess = function(event) {
  37. is(event.target.result, testInt.value, "Got the right value");
  38. };
  39. }
  40. // Wait for success
  41. yield undefined;
  42. finishTest();
  43. yield undefined;
  44. }