A fork of https://github.com/ueokande/vim-vixen
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
1.3 KiB
34 lines
1.3 KiB
import * as parsers from 'background/usecases/parsers'; |
|
|
|
describe("shared/commands/parsers", () => { |
|
describe("#parsers.parseSetOption", () => { |
|
it('parse set string', () => { |
|
let [key, value] = parsers.parseSetOption('hintchars=abcdefgh'); |
|
expect(key).to.equal('hintchars'); |
|
expect(value).to.equal('abcdefgh'); |
|
}); |
|
|
|
it('parse set empty string', () => { |
|
let [key, value] = parsers.parseSetOption('hintchars='); |
|
expect(key).to.equal('hintchars'); |
|
expect(value).to.equal(''); |
|
}); |
|
|
|
it('parse set boolean', () => { |
|
let [key, value] = parsers.parseSetOption('smoothscroll'); |
|
expect(key).to.equal('smoothscroll'); |
|
expect(value).to.be.true; |
|
|
|
[key, value] = parsers.parseSetOption('nosmoothscroll'); |
|
expect(key).to.equal('smoothscroll'); |
|
expect(value).to.be.false; |
|
}); |
|
|
|
it('throws error on unknown property', () => { |
|
expect(() => parsers.parseSetOption('encoding=utf-8')).to.throw(Error, 'Unknown'); |
|
expect(() => parsers.parseSetOption('paste')).to.throw(Error, 'Unknown'); |
|
expect(() => parsers.parseSetOption('nopaste')).to.throw(Error, 'Unknown'); |
|
expect(() => parsers.parseSetOption('smoothscroll=yes')).to.throw(Error, 'Invalid argument'); |
|
}); |
|
}); |
|
});
|
|
|