VulpesOS/gaia/shared/test/unit/mocks/mock_moz_activity.js
OverSu b38dea0597 Publish Vulpes Preview 15 sources for desktop, Android and Tundra
Share Gaia assets and adapters, keep private profiles and development documents local, and update both public READMEs.
2026-09-30 23:13:03 +02:00

49 lines
1.1 KiB
JavaScript
Executable file

'use strict';
/* exported MockMozActivity */
var MockMozActivity = function(info) {
MockMozActivity.calls.push(info);
MockMozActivity.instances.push(this);
if (!info) {
return;
}
var name = info.name;
var data = info.data;
return {
set onsuccess(cb) {
MockMozActivity.timeouts.push(setTimeout(cb, 50));
},
set onerror(cb) {
MockMozActivity.errorCallback = cb;
},
name: name,
data: data,
get result() {
return MockMozActivity.successResult;
}
};
};
// create an array to hold any calls to this function to test them
MockMozActivity.mSetup = function() {
MockMozActivity.calls = [];
MockMozActivity.instances = [];
MockMozActivity.successResult = null;
MockMozActivity.timeouts = [];
};
MockMozActivity.mTriggerOnError = function() {
MockMozActivity.errorCallback();
};
// destroy the array so it resets every time
MockMozActivity.mTeardown = function() {
delete MockMozActivity.calls;
delete MockMozActivity.instances;
MockMozActivity.timeouts.forEach(clearTimeout);
MockMozActivity.timeouts = [];
};