Skip to content

Commit 272fca5

Browse files
committed
models/crate: Extract owners property
1 parent 21e0f66 commit 272fca5

File tree

4 files changed

+14
-16
lines changed

4 files changed

+14
-16
lines changed

app/components/crate-sidebar.hbs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@
8484

8585
<div>
8686
<h3>Owners</h3>
87-
<OwnersList @teams={{@crate.owner_team}} @users={{@crate.owner_user}} />
87+
<OwnersList @owners={{@crate.owners}} />
8888
</div>
8989
</div>
9090

app/components/owners-list.hbs

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,8 @@
11
<ul local-class='owners' data-test-owners>
2-
{{#each @teams as |team|}}
2+
{{#each @owners as |owner|}}
33
<li>
4-
<LinkTo @route={{team.kind}} @model={{team.login}} data-test-team-link={{team.login}}>
5-
<UserAvatar @user={{team}} @size="medium-small" />
6-
</LinkTo>
7-
</li>
8-
{{/each}}
9-
10-
{{#each @users as |user|}}
11-
<li>
12-
<LinkTo @route={{user.kind}} @model={{user.login}} data-test-user-link={{user.login}}>
13-
<UserAvatar @user={{user}} @size="medium-small" />
4+
<LinkTo @route={{owner.kind}} @model={{owner.login}} data-test-owner-link={{owner.login}}>
5+
<UserAvatar @user={{owner}} @size="medium-small" />
146
</LinkTo>
157
</li>
168
{{/each}}

app/models/crate.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,12 @@ export default class Crate extends Model {
4242
}
4343
}
4444

45+
get owners() {
46+
let teams = this.owner_team.toArray() ?? [];
47+
let users = this.owner_user.toArray() ?? [];
48+
return [...teams, ...users];
49+
}
50+
4551
follow = memberAction({ type: 'PUT', path: 'follow' });
4652
unfollow = memberAction({ type: 'DELETE', path: 'follow' });
4753

tests/acceptance/crate-test.js

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ module('Acceptance | crate page', function (hooks) {
148148
this.server.loadFixtures();
149149

150150
await visit('/crates/nanomsg');
151-
await click('[data-test-owners] [data-test-user-link="blabaere"]');
151+
await click('[data-test-owners] [data-test-owner-link="blabaere"]');
152152

153153
assert.equal(currentURL(), '/users/blabaere');
154154
assert.dom('[data-test-heading] [data-test-username]').hasText('blabaere');
@@ -158,7 +158,7 @@ module('Acceptance | crate page', function (hooks) {
158158
this.server.loadFixtures();
159159

160160
await visit('/crates/nanomsg');
161-
await click('[data-test-owners] [data-test-team-link="github:org:thehydroimpulse"]');
161+
await click('[data-test-owners] [data-test-owner-link="github:org:thehydroimpulse"]');
162162

163163
assert.equal(currentURL(), '/teams/github:org:thehydroimpulse');
164164
assert.dom('[data-test-heading] [data-test-team-name]').hasText('thehydroimpulseteam');
@@ -170,7 +170,7 @@ module('Acceptance | crate page', function (hooks) {
170170
await visit('/crates/nanomsg');
171171

172172
assert
173-
.dom('[data-test-owners] [data-test-team-link="github:org:thehydroimpulse"] img')
173+
.dom('[data-test-owners] [data-test-owner-link="github:org:thehydroimpulse"] img')
174174
.hasAttribute('src', 'https://avatars.githubusercontent.com/u/565790?v=3&s=64');
175175

176176
assert.dom('[data-test-owners] li').exists({ count: 4 });
@@ -181,7 +181,7 @@ module('Acceptance | crate page', function (hooks) {
181181

182182
await visit('/crates/nanomsg');
183183

184-
assert.dom('[data-test-owners] [data-test-team-link="github:org:thehydroimpulse"]').exists();
184+
assert.dom('[data-test-owners] [data-test-owner-link="github:org:thehydroimpulse"]').exists();
185185
assert.dom('[data-test-owners] li').exists({ count: 4 });
186186
});
187187

0 commit comments

Comments
 (0)