diff options
Diffstat (limited to 'test/components')
-rw-r--r-- | test/components/follow.html | 9 | ||||
-rw-r--r-- | test/components/follow.test.js | 25 |
2 files changed, 34 insertions, 0 deletions
diff --git a/test/components/follow.html b/test/components/follow.html new file mode 100644 index 0000000..6bd8f87 --- /dev/null +++ b/test/components/follow.html @@ -0,0 +1,9 @@ +<!DOCTYPE html> +<html> + <body> + <a href='#' >link</a> + <a href='#' style='display:none'>invisible 1</a> + <a href='#' style='visibility:hidden'>invisible 2</a> + <i>not link<i> + </body> +</html> diff --git a/test/components/follow.test.js b/test/components/follow.test.js new file mode 100644 index 0000000..f2f870e --- /dev/null +++ b/test/components/follow.test.js @@ -0,0 +1,25 @@ +import { expect } from "chai"; +import FollowComponent from '../../src/components/follow'; + +describe('FollowComponent', () => { + describe('#codeChars', () => { + it('returns a string for key codes', () => { + let chars = [ + KeyboardEvent.DOM_VK_0, KeyboardEvent.DOM_VK_1, + KeyboardEvent.DOM_VK_A, KeyboardEvent.DOM_VK_B]; + expect(FollowComponent.codeChars(chars)).to.equal('01ab'); + expect(FollowComponent.codeChars([])).to.be.equal(''); + }); + }); + + describe('#getTargetElements', () => { + beforeEach(() => { + document.body.innerHTML = __html__['test/components/follow.html']; + }); + + it('returns visible links', () => { + let links = FollowComponent.getTargetElements(window.document); + expect(links).to.have.lengthOf(1); + }); + }); +}); |