add keys test
This commit is contained in:
		
							parent
							
								
									f891ccf999
								
							
						
					
					
						commit
						8c6bd8eb90
					
				
					 1 changed files with 55 additions and 0 deletions
				
			
		
							
								
								
									
										55
									
								
								test/background/keys.test.js
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								test/background/keys.test.js
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,55 @@
 | 
			
		|||
import { expect } from "chai";
 | 
			
		||||
import { identifyKey, identifyKeys, hasPrefix } from '../../src/background/keys';
 | 
			
		||||
 | 
			
		||||
describe('keys', () => {
 | 
			
		||||
  describe('#identifyKey', () => {
 | 
			
		||||
    it('return true if key matched', () => {
 | 
			
		||||
      expect(identifyKey(
 | 
			
		||||
        { code: 100 },
 | 
			
		||||
        { code: 100 })).to.be.true;
 | 
			
		||||
      expect(identifyKey(
 | 
			
		||||
        { code: 100, shift: true, ctrl: true },
 | 
			
		||||
        { code: 100, shift: true, ctrl: true })).to.be.true;
 | 
			
		||||
      expect(identifyKey(
 | 
			
		||||
        { code: 100, shift: false, ctrl: false },
 | 
			
		||||
        { code: 100 })).to.be.true;
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it('return false if key not matched', () => {
 | 
			
		||||
      expect(identifyKey(
 | 
			
		||||
        { code: 100 },
 | 
			
		||||
        { code: 101 })).to.be.false;
 | 
			
		||||
      expect(identifyKey(
 | 
			
		||||
        { code: 100, shift: true, ctrl: true },
 | 
			
		||||
        { code: 100, shift: true })).to.be.false;
 | 
			
		||||
    });
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  describe('#identifyKeys', () => {
 | 
			
		||||
    it ('return true if keys matched', () => {
 | 
			
		||||
      let keys = [{ code: 100 }, { code: 101, ctrl: false}];
 | 
			
		||||
      let prefix = [{ code: 100, ctrl: false }, { code: 101 }];
 | 
			
		||||
      expect(hasPrefix(keys, prefix)).to.be.true;
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it ('return false if keys matched', () => {
 | 
			
		||||
      let keys = [{ code: 100 }, { code: 101, ctrl: true }];
 | 
			
		||||
      let prefix = [{ code: 100 }, { code: 101 }];
 | 
			
		||||
      expect(hasPrefix(keys, prefix)).to.be.false;
 | 
			
		||||
    });
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  describe('#hasPrefix', () => {
 | 
			
		||||
    it ('return true if prefix matched', () => {
 | 
			
		||||
      let keys = [{ code: 100 }, { code: 101 }, { code: 102 }];
 | 
			
		||||
      let prefix = [{ code: 100 }, { code: 101 }];
 | 
			
		||||
      expect(hasPrefix(keys, prefix)).to.be.true;
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
    it ('return false if prefix not matched', () => {
 | 
			
		||||
      let keys = [{ code: 100 }, { code: 101 }, { code: 102 }];
 | 
			
		||||
      let prefix = [{ code: 102 }];
 | 
			
		||||
      expect(hasPrefix(keys, prefix)).to.be.false;
 | 
			
		||||
    });
 | 
			
		||||
  });
 | 
			
		||||
});
 | 
			
		||||
		Reference in a new issue