                 on_keyup "a"
                 expect(received_event).toEqual(down_event)
 
+            it "only fires when all of the keys have been pressed", ->
+                keypress.combo "a b c", key_handler
+                on_keydown "a"
+                expect(key_handler).not.toHaveBeenCalled()
+                on_keydown "b"
+                expect(key_handler).not.toHaveBeenCalled()
+                on_keydown "c"
+                expect(key_handler).toHaveBeenCalled()
+                on_keyup "a"
+                on_keyup "b"
+                on_keyup "c"
+
         describe "on_keyup", ->
 
             it "fires properly", ->

                up_event = on_keyup "a"
                expect(received_event).toEqual(up_event)


                expect(key_handler).toHaveBeenCalled()

            it "can take a string", ->
                keypress.register_combo(
                    keys        : "a"
                    on_keydown  : key_handler
