Skip to content

Commit 48dedee

Browse files
committed
Add test to ensure re-fetch on src changing
1 parent 5cd28d2 commit 48dedee

File tree

2 files changed

+25
-4
lines changed

2 files changed

+25
-4
lines changed

test/karma.config.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
function request(request, response, next) {
2-
if (request.method === 'GET' && request.url.startsWith('/results?q=')) {
2+
if (request.method === 'GET') {
33
response.writeHead(200)
44
response.end(`
5-
<ol>
6-
<li>item: ${request.url.split('=')[1]}</li>
5+
<ol data-src="${request.url}">
76
<li>item</li>
87
<li>item</li>
98
<li>item</li>

test/test.js

Lines changed: 23 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,33 @@ describe('remote-input', function() {
3030
const input = document.querySelector('input')
3131
const results = document.querySelector('#results')
3232
remoteInput.addEventListener('loadend', function() {
33-
assert.equal(results.querySelector('li').textContent, 'item: test')
33+
assert.equal(results.querySelector('ol').getAttribute('data-src'), '/results?q=test')
3434
done()
3535
})
3636
input.value = 'test'
3737
input.focus()
3838
})
39+
40+
it('loads content again after src is changed', function(done) {
41+
const remoteInput = document.querySelector('remote-input')
42+
const input = document.querySelector('input')
43+
const results = document.querySelector('#results')
44+
45+
function listenOnce(cb) {
46+
remoteInput.addEventListener('loadend', cb, {once: true})
47+
}
48+
listenOnce(function() {
49+
assert.equal(results.querySelector('ol').getAttribute('data-src'), '/results?q=test')
50+
51+
listenOnce(function() {
52+
assert.equal(results.querySelector('ol').getAttribute('data-src'), '/srcChanged?q=test')
53+
done()
54+
})
55+
56+
remoteInput.src = '/srcChanged'
57+
})
58+
input.value = 'test'
59+
input.focus()
60+
})
3961
})
4062
})

0 commit comments

Comments
 (0)