Skip to content

Commit 277cb3c

Browse files
committed
templates/index: Use test-selectors
1 parent c3d1d99 commit 277cb3c

File tree

4 files changed

+24
-24
lines changed

4 files changed

+24
-24
lines changed

app/templates/application.hbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
</form>
2929

3030
<div class='nav'>
31-
{{#link-to "crates" (query-params letter="null" page=1)}}
31+
{{#link-to "crates" (query-params letter="null" page=1) data-test-all-crates-link}}
3232
Browse All Crates
3333
{{/link-to}}
3434
<span class="sep">|</span>
@@ -71,7 +71,7 @@
7171
{{/rl-dropdown}}
7272
{{/rl-dropdown-container}}
7373
{{else}}
74-
{{#link-to "login"}}
74+
{{#link-to "login" data-test-login-link}}
7575
{{svg-jar "lock"}}
7676
Log in with GitHub
7777
{{/link-to}}

app/templates/components/crate-list.hbs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<ul>
2-
{{#each crates as |crate|}}
2+
{{#each crates as |crate index|}}
33
<li>
4-
{{#link-to 'crate' crate.id class='name'}}
4+
{{#link-to 'crate' crate.id class='name' data-test-crate-link=index}}
55
<span>{{ crate.name }} ({{ crate.max_version }})</span>
66
<div class='arrow-in-list'>
77
{{svg-jar "right-arrow"}}

app/templates/index.hbs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<h1>The Rust community&rsquo;s crate registry</h1>
33

44
<div class='links'>
5-
{{#link-to "install" class='yellow-button'}}
5+
{{#link-to "install" class='yellow-button' data-test-install-cargo-link=true}}
66
{{svg-jar "button-download"}}
77
Install Cargo
88
{{/link-to}}
@@ -24,39 +24,39 @@
2424
<div id='stats'>
2525
<div class='downloads'>
2626
{{svg-jar "download"}}
27-
<span class='num'>{{format-num model.num_downloads}}</span>
27+
<span class='num' data-test-total-downloads>{{format-num model.num_downloads}}</span>
2828
<span class='desc small'>Downloads</span>
2929
</div>
3030
<div class='crates'>
3131
{{svg-jar "crate"}}
32-
<span class='num'>{{format-num model.num_crates}}</span>
32+
<span class='num' data-test-total-crates>{{format-num model.num_crates}}</span>
3333
<span class='desc small'>Crates in stock</span>
3434
</div>
3535
</div>
3636
</div>
3737

3838
<div id='home-crates' class='crate-lists'>
39-
<div id='new-crates'>
39+
<div id='new-crates' data-test-new-crates>
4040
<h2>New Crates</h2>
4141
{{crate-list crates=model.new_crates}}
4242
</div>
43-
<div id='most-downloaded'>
43+
<div id='most-downloaded' data-test-most-downloaded>
4444
<h2>Most Downloaded</h2>
4545
{{crate-list crates=model.most_downloaded}}
4646
</div>
47-
<div id='just-updated'>
47+
<div id='just-updated' data-test-just-updated>
4848
<h2>Just Updated</h2>
4949
{{crate-list crates=model.just_updated}}
5050
</div>
51-
<div id='most-recently-downloaded'>
51+
<div id='most-recently-downloaded' data-test-most-recently-downloaded>
5252
<h2>Most Recent Downloads</h2>
5353
{{crate-list crates=model.most_recently_downloaded}}
5454
</div>
55-
<div id='keywords'>
55+
<div id='keywords' data-test-keywords>
5656
<h2>Popular Keywords {{#link-to 'keywords'}}(see all){{/link-to}}</h2>
5757
{{keyword-list keywords=model.popular_keywords}}
5858
</div>
59-
<div id='categories'>
59+
<div id='categories' data-test-categories>
6060
<h2>Popular Categories {{#link-to 'categories'}}(see all){{/link-to}}</h2>
6161
{{category-list categories=model.popular_categories}}
6262
</div>

tests/acceptance/front-page-test.js

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,19 @@ test('visiting /', async function(assert) {
1111
assert.equal(currentURL(), '/');
1212
assert.equal(document.title, 'Cargo: packages for Rust');
1313

14-
assert.dom('a[href="/install"]').exists();
15-
assert.dom('a[href="/crates"]').exists();
16-
assert.dom('a[href="/login"]').exists();
14+
assert.dom('[data-test-install-cargo-link]').exists();
15+
assert.dom('[data-test-all-crates-link]').exists();
16+
assert.dom('[data-test-login-link]').exists();
1717

18-
assert.dom('.downloads .num').hasText('122,669');
19-
assert.dom('.crates .num').hasText('19');
18+
assert.dom('[data-test-total-downloads]').hasText('122,669');
19+
assert.dom('[data-test-total-crates]').hasText('19');
2020

21-
assert.dom('#new-crates ul > li a').hasText('Inflector (0.1.6)');
22-
assert.dom('#new-crates ul > li a').hasAttribute('href', '/crates/Inflector');
21+
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasText('Inflector (0.1.6)');
22+
assert.dom('[data-test-new-crates] [data-test-crate-link="0"]').hasAttribute('href', '/crates/Inflector');
2323

24-
assert.dom('#most-downloaded ul > li a').hasText('serde (0.6.1)');
25-
assert.dom('#most-downloaded ul > li a').hasAttribute('href', '/crates/serde');
24+
assert.dom('[data-test-most-downloaded] [data-test-crate-link="0"]').hasText('serde (0.6.1)');
25+
assert.dom('[data-test-most-downloaded] [data-test-crate-link="0"]').hasAttribute('href', '/crates/serde');
2626

27-
assert.dom('#just-updated ul > li a').hasText('nanomsg (0.7.0-alpha)');
28-
assert.dom('#just-updated ul > li a').hasAttribute('href', '/crates/nanomsg');
27+
assert.dom('[data-test-just-updated] [data-test-crate-link="0"]').hasText('nanomsg (0.7.0-alpha)');
28+
assert.dom('[data-test-just-updated] [data-test-crate-link="0"]').hasAttribute('href', '/crates/nanomsg');
2929
});

0 commit comments

Comments
 (0)