Giter VIP home page Giter VIP logo

Comments (5)

dumbmatter avatar dumbmatter commented on May 29, 2024

Can you provide a test case showing the problem?

from fakeindexeddb.

BrinsterAman avatar BrinsterAman commented on May 29, 2024

Sure but being proprietary code I cant reveal all of them, still pasting a part of it which will give you a fair idea.

sessionStorage.fromStore = "test-tab"; let request = indexedDB.open("test-tab", 3); request.onerror = function (event) { console.log("Error in performing db operations"); };

these lines of code are followed by render method and some expects.

from fakeindexeddb.

mmnoo avatar mmnoo commented on May 29, 2024

Im also trying to solve this issue and am not finding anything helpful in documentation on simulating errors for tests. Im using Dexie, and have a test utility that is feeling too hacky for my liking (and I am pretty new to indexedDB, so am not confident the utility wouldnt produce false positives or false negatives). Would be nice to have something explicit to rely on for error scenarios.

const getMockDexieInstanceThatProducesErrors = () => {
  // produces an error in all cases so far because there are no stores defined
  // may need to explore better way to simulate indexeddb error
  return new Dexie('error', {
    indexedDB: fakeIndexedDB,
  })
}

from fakeindexeddb.

dumbmatter avatar dumbmatter commented on May 29, 2024

Currently there's nothing special beyond what's in the IndexedDB API. If you want to simulate an error, do a database operation that causes an error. If that's not sufficient, you'll have to give me a bit more detail to explain what you're trying to do. If your question is actually about Dexie (as in, you have the same problem whether you're using real IndexedDB or fake-indexeddb), then you should ask there, because they'll be able to answer it better than me.

from fakeindexeddb.

mmnoo avatar mmnoo commented on May 29, 2024

Im just trying to implement configuration for a fake indexedDB for testing that will return an error no matter what operation is performed. So that I dont have to manually mock every little operation.

This seems to do the trick for the way I am using indexedDB. Dexie errors because there are no stores defined, but it falls back on erroring because the IndexedDb API is undefined.

Sorry, Im in the process of learning (or avoiding learning) indexedDB, so separating what is Dexie and what is indexedDB a bit challenging. Thanks for providing your library so there is one less thing I have to do!

const getMockDexieInstanceThatProducesErrors = () => {
  return new Dexie('error', {
    indexedDB: undefined,
  })
}

from fakeindexeddb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.