summaryrefslogtreecommitdiff
path: root/spec/javascripts/u2f/mock_u2f_device.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/javascripts/u2f/mock_u2f_device.js')
-rw-r--r--spec/javascripts/u2f/mock_u2f_device.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/spec/javascripts/u2f/mock_u2f_device.js b/spec/javascripts/u2f/mock_u2f_device.js
new file mode 100644
index 00000000000..8198ff28b84
--- /dev/null
+++ b/spec/javascripts/u2f/mock_u2f_device.js
@@ -0,0 +1,30 @@
+var bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; };
+
+this.MockU2FDevice = (function() {
+ function MockU2FDevice() {
+ this.respondToAuthenticateRequest = bind(this.respondToAuthenticateRequest, this);
+ this.respondToRegisterRequest = bind(this.respondToRegisterRequest, this);
+ window.u2f || (window.u2f = {});
+ window.u2f.register = (function(_this) {
+ return function(appId, registerRequests, signRequests, callback) {
+ return _this.registerCallback = callback;
+ };
+ })(this);
+ window.u2f.sign = (function(_this) {
+ return function(appId, challenges, signRequests, callback) {
+ return _this.authenticateCallback = callback;
+ };
+ })(this);
+ }
+
+ MockU2FDevice.prototype.respondToRegisterRequest = function(params) {
+ return this.registerCallback(params);
+ };
+
+ MockU2FDevice.prototype.respondToAuthenticateRequest = function(params) {
+ return this.authenticateCallback(params);
+ };
+
+ return MockU2FDevice;
+
+})();