diff --git a/.gitignore b/.gitignore index 8aaf98d..d801187 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ node_modules coverage browser .vscode +.dccache diff --git a/package.json b/package.json index 08dd04d..5bae143 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "firebase-mock", - "version": "2.3.0", + "version": "2.3.1", "description": "Firebase mock library for writing unit tests", "main": "./src", "scripts": { diff --git a/src/firestore-query.js b/src/firestore-query.js index 6d79663..730a9e4 100644 --- a/src/firestore-query.js +++ b/src/firestore-query.js @@ -106,7 +106,7 @@ MockFirestoreQuery.prototype.where = function (property, operator, value) { var path = getPropertyPath(property); // check if unsupported operator - if (operator !== '==' && operator !== 'array-contains') { + if (operator !== '==' && operator !== 'array-contains' && operator !== 'in') { console.warn('Using unsupported where() operator for firebase-mock, returning entire dataset'); } else { if (_.size(this.data) !== 0) { @@ -124,6 +124,11 @@ MockFirestoreQuery.prototype.where = function (property, operator, value) { results[key] = _.cloneDeep(data); } break; + case 'in': + if (_.includes(value, _.get(data, property))) { + results[key] = _.cloneDeep(data); + } + break; default: results[key] = _.cloneDeep(data); break;