import '@testing-library/jest-dom'; import $, {VeamsQueryObject} from '../src'; test('find() - string selector (id)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $body = $(document.body); const $testEls: VeamsQueryObject = $body.find('#target-el-3'); expect($testEls).toHaveLength(1); expect($testEls[0]).toHaveAttribute('id', 'target-el-3'); }); test('find() - string selector (class)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $body = $(document.body); const $testEls: VeamsQueryObject = $body.find('.target-el'); expect($testEls).toHaveLength(2); expect($testEls[0]).toHaveAttribute('id', 'target-el'); expect($testEls[1]).toHaveAttribute('id', 'target-el-4'); }); test('find() - string selector (attribute)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $body = $(document.body); const $testEls: VeamsQueryObject = $body.find('[tabindex]'); expect($testEls).toHaveLength(3); expect($testEls[0]).toHaveAttribute('id', 'target-el-2'); expect($testEls[1]).toHaveAttribute('id', 'target-el-4'); expect($testEls[2]).toHaveAttribute('id', 'target-el-5'); }); test('find() - string selector (tag)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $body = $(document.body); const $testEls: VeamsQueryObject = $body.find('span'); expect($testEls).toHaveLength(2); expect($testEls[0]).toHaveAttribute('id', 'target-el-2'); expect($testEls[1]).toHaveAttribute('id', 'target-el-4'); }); test('find() - selector (VeamsQueryObject)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $testEls: VeamsQueryObject = $('div'); const $targetEls: VeamsQueryObject = $('.target-el'); const $filteredEls: VeamsQueryObject = $testEls.find($targetEls); expect($testEls).toHaveLength(5); expect($targetEls).toHaveLength(2); expect($targetEls[0]).toHaveAttribute('id', 'target-el'); expect($targetEls[1]).toHaveAttribute('id', 'target-el-4'); expect($filteredEls).toHaveLength(2); expect($filteredEls[0]).toHaveAttribute('id', 'target-el'); expect($filteredEls[1]).toHaveAttribute('id', 'target-el-4'); }); test('find() - selector (HTMLElement)', () => { document.body.innerHTML = `
text content
text content
text content
text content
text content
`; const $testEls: VeamsQueryObject = $('div'); const targetEl: HTMLElement = document.getElementById('target-el-4'); const $filteredEls: VeamsQueryObject = $testEls.find(targetEl); expect($testEls).toHaveLength(5); expect($filteredEls).toHaveLength(1); expect($filteredEls[0]).toHaveAttribute('id', 'target-el-4'); });