1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-10-18 20:09:08 +02:00
unleash.unleash/test/eventDbMock.js

111 lines
2.1 KiB
JavaScript
Raw Normal View History

2014-10-24 16:15:59 +02:00
var Promise = require("bluebird");
var events = [
{
"id": 1,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
2014-10-31 16:35:35 +01:00
2014-10-24 16:15:59 +02:00
}
},
{
"id": 2,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
"foo": "bar"
}
},
{
"id": 3,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
2014-11-14 08:09:46 +01:00
"foo": "rab",
"name": "myname"
2014-10-24 16:15:59 +02:00
}
}
];
2014-11-14 08:09:46 +01:00
var filterableEvents = [
{
"id": 1,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
"name": "foo"
}
},
{
"id": 2,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
"name": "bar"
}
},
{
"id": 3,
"created_at": 1414159948677,
"type": "feature-create",
"created_by": "me",
"data": {
"name": "myname"
}
}
];
function filterEventsByName(name) {
return filterableEvents.filter(function (n){return n.data.name===name;});
}
2014-10-24 16:15:59 +02:00
function getEvent(name) {
var eventFound;
events.forEach(function (event) {
if (event.name === name) {
eventFound = event;
}
});
return eventFound;
}
2014-10-23 16:02:12 +02:00
function storeEvent() {
return new Promise(function (resolve) {
resolve();
});
}
module.exports = {
2014-10-24 16:15:59 +02:00
store: storeEvent,
getEvents: function() {
return new Promise(function (resolve) {
resolve(events);
});
},
2014-11-14 08:09:46 +01:00
getEventsFilterByName: function(name) {
return new Promise(function (resolve) {
resolve(filterEventsByName(name));
});
},
2014-10-24 16:15:59 +02:00
getEvent: function(name) {
var event = getEvent(name);
if(event) {
return Promise.resolve(event);
} else {
return Promise.reject("Event not found");
}
}
2014-11-14 08:09:46 +01:00
};