Example in JavaScript

The following is an example of a FakeDataContext in JavaScript.

export class FakeDataContext {
_identityCounter = 1;
_dataSet = [];

get DataSet() {
return this._dataSet;
}

set DataSet(value) {
this._dataSet = value;
}

get(predicate) {
if (typeof(predicate) !== 'function') {
throw new Error('Predicate must be a function');
}

const resultSet = this_dataSet.filter(predicate);

return resultSet.length >= 1 ? {...resultSet[0]} : null;
}

getAll() {
return this._dataSet.map((x) => {
return {...x};
});
}

save(item) {
return item.id ? this.update(item) : this.create(item);
}

update(item) {
if (!this._dataSet.some(x => x.id === item.id)) {
this._dataSet.push({...item});
} else {
let itemIndex = this._dataSet.findIndex(x => x.id === item.id);
this._dataSet[itemIndex] = {...item};
}

return {...item};
}

create(item) {
let newItem = {...item};
newItem.id = this._identityCounter++;
this._dataSet.push({...newItem});

return {...newItem};
}
}
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.17.167.114