Overtorment
5 years ago
5 changed files with 80 additions and 38 deletions
@ -1,34 +0,0 @@ |
|||
/* global jest */ |
|||
export default class MockStorage { |
|||
constructor(cache = {}) { |
|||
this.storageCache = cache; |
|||
} |
|||
|
|||
setItem = jest.fn((key, value) => { |
|||
return new Promise((resolve, reject) => { |
|||
return typeof key !== 'string' || typeof value !== 'string' |
|||
? reject(new Error('key and value must be string')) |
|||
: resolve((this.storageCache[key] = value)); |
|||
}); |
|||
}); |
|||
|
|||
getItem = jest.fn(key => { |
|||
return new Promise(resolve => { |
|||
return this.storageCache.hasOwnProperty(key) ? resolve(this.storageCache[key]) : resolve(null); |
|||
}); |
|||
}); |
|||
|
|||
removeItem = jest.fn(key => { |
|||
return new Promise((resolve, reject) => { |
|||
return this.storageCache.hasOwnProperty(key) ? resolve(delete this.storageCache[key]) : reject(new Error('No such key!')); |
|||
}); |
|||
}); |
|||
|
|||
clear = jest.fn(key => { |
|||
return new Promise((resolve, reject) => resolve((this.storageCache = {}))); |
|||
}); |
|||
|
|||
getAllKeys = jest.fn(key => { |
|||
return new Promise((resolve, reject) => resolve(Object.keys(this.storageCache))); |
|||
}); |
|||
} |
Loading…
Reference in new issue