code-corps / code-corps/code-corps-ember

Extract project join status from project-card component into a separate component

オープン
#1,181 コメント 0 件 リアクション 0 件 担当者 1 名 @daveconnis が担当を希望しています GitHub で見る
Difficulty: Easy Skill: ember-cli-page-object Skill: Ember.js Skill: JavaScript Skill: Testing
主要言語
JavaScript
スター
120
フォーク
75
PR マージ指標
30日以内にマージされた PR はありません

説明

# Problem

The logic for the project status/join button in the project card template is highly complex. We could simplify it by extracting a part.

The following code:

```handlebars
{{#if currentProjectMembership.isLoaded}}
{{#if (eq currentProjectMembership.role 'pending')}}
Request sent
{{else}}
Member
{{/if}}
{{/if}}

{{#unless currentProjectMembership}}
{{project-join-modal project=project skills=projectSkills}}
{{/unless}}
```

should be replaced with the equivalent of:

```handlebars
{{#if currentProjectMembership}}
{{membership-status membership=currentProjectMembership}}
{{else}}
{{project-join-modal project=project skills=projectSkills}}
{{/if}}
```

## Subtasks

- [ ] Implement component
- Write integration tests for component
- [ ] If current project membership is loading, it renders nothing
- [ ] If current project membership is loaded and role is pending, it renders the "Request sent" button
- [ ] If current project membership is loaded and role is something else, it renders the "Member" button
- [ ] A page-object should be written for these tests
- [ ] Replace code with component
- Add integration tests for project card component
- [ ] If there is a current project membership, it renders the project-membership-subcomponent
- [ ] If there is no current project membership, it renders the project-join-modal subcomponent
- [ ] The project-card page object will need to be expanded with two new properties for this

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。