created function to test isArray, updated tests

This commit is contained in:
brucejo
2017-02-23 16:29:00 -08:00
committed by Jesse Rosenberger
parent 138ceb1ca4
commit 429529fbaf
2 changed files with 13 additions and 3 deletions

View File

@@ -9,6 +9,8 @@ var warn = function () {
}
};
function isArray(arr) {return arr instanceof Array || _.isArray(arr)}
var idStringify = MongoID.idStringify;
var idParse = MongoID.idParse;
@@ -94,7 +96,7 @@ ObserveSequence = {
if (!seq) {
seqArray = seqChangedToEmpty(lastSeqArray, callbacks);
} else if (seq instanceof Array || _.isArray(seq)) {
} else if (isArray(seq)) {
seqArray = seqChangedToArray(lastSeqArray, seq, callbacks);
} else if (isStoreCursor(seq)) {
var result /* [seqArray, activeObserveHandle] */ =
@@ -126,7 +128,7 @@ ObserveSequence = {
fetch: function (seq) {
if (!seq) {
return [];
} else if (seq instanceof Array || _.isArray(seq)) {
} else if (isArray(seq)) {
return seq;
} else if (isStoreCursor(seq)) {
return seq.fetch();

View File

@@ -147,6 +147,14 @@ Tinytest.add('observe-sequence - initial data for all sequence types', function
{addedAt: ["37", {_id: "37", bar: 2}, 1, null]}
]);
// sub-classed arrays
runOneObserveSequenceTestCase(test, function () {
return new ArraySubclass({_id: "13", foo: 1}, {_id: "37", bar: 2});
}, function () {}, [
{addedAt: ["13", {_id: "13", foo: 1}, 0, null]},
{addedAt: ["37", {_id: "37", bar: 2}, 1, null]}
]);
runOneObserveSequenceTestCase(test, function () {
var coll = new Mongo.Collection(null);
coll.insert({_id: "13", foo: 1});
@@ -609,7 +617,7 @@ Tinytest.add('observe-sequence - subclassed number arrays', function (test) {
dep.depend();
return seq;
}, function () {
seq = [1, 3, 2, 3];
seq = new ArraySubclass(1, 3, 2, 3);
dep.changed();
}, [
{addedAt: [1, 1, 0, null]},