diff --git a/src/app/core/header/header.spec.ts b/src/app/core/header/header.spec.ts
index 0bd6877..c1d6062 100644
--- a/src/app/core/header/header.spec.ts
+++ b/src/app/core/header/header.spec.ts
@@ -42,6 +42,10 @@
   }
 };
 
+const MockXosKeyboardShortcut = {
+  registerKeyBinding: jasmine.createSpy('registerKeyBinding')
+};
+
 describe('header component', () => {
   beforeEach(() => {
     angular
@@ -52,6 +56,7 @@
       .value('toastrConfig', MockToastrConfig)
       .value('AuthService', MockAuth)
       .value('NavigationService', {})
+      .value('XosKeyboardShortcut', MockXosKeyboardShortcut)
       .value('StyleConfig', {
         logo: 'cord-logo.png',
       })
@@ -77,6 +82,17 @@
     expect(header.trim()).not.toBeNull();
   });
 
+  it('should register a keyboard shortcut', () => {
+    expect(MockXosKeyboardShortcut.registerKeyBinding).toHaveBeenCalled();
+    // expect(MockXosKeyboardShortcut.registerKeyBinding).toHaveBeenCalledWith({
+    //   key: 'f',
+    //   description: 'Select search box',
+    //   cb: () => {
+    //     $('.navbar-form input').focus();
+    //   },
+    // }, 'global');
+  });
+
   it('should print user email', () => {
     expect($('.profile-address', element).text()).toBe('test@xos.us');
   });
