Skip to content

Commit

Permalink
Merge fe2b5cd into 1e8f853
Browse files Browse the repository at this point in the history
  • Loading branch information
vvatanabe committed Jul 18, 2018
2 parents 1e8f853 + fe2b5cd commit cc19d90
Show file tree
Hide file tree
Showing 7 changed files with 26 additions and 26 deletions.
2 changes: 1 addition & 1 deletion bbir/builder.go
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ func (b *commandBuilder) ensureMilestoneID(cmd *Command, line *Line) error {

func (b *commandBuilder) ensureAssigneeID(cmd *Command, line *Line) error {
if line.Assignee != "" {
v := b.project.FindUserByUserID(line.Assignee)
v := b.project.FindUserByName(line.Assignee)
if v == nil {
return errors.New(b.msgs.AssigneeIsNotJoining(line.Assignee))
}
Expand Down
6 changes: 3 additions & 3 deletions bbir/builder_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@ func NewInjectorForCommandBuilderTest(t *testing.T) shot.Injector {
}, nil
},
getProjectUsers: func(ctx context.Context, id ProjectID) ([]*User, error) {
user1 := &User{ID: 1, UserID: "ken"}
user2 := &User{ID: 2, UserID: "taro"}
user3 := &User{ID: 3, UserID: "hana"}
user1 := &User{ID: 1, Name: "ken"}
user2 := &User{ID: 2, Name: "taro"}
user3 := &User{ID: 3, Name: "hana"}
return []*User{user1, user2, user3}, nil
},
getIssueTypes: func(ctx context.Context, id ProjectID) ([]*IssueType, error) {
Expand Down
10 changes: 5 additions & 5 deletions bbir/messages.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ type Messages interface {
CategoryIsNotRegistered(name string) string
VersionIsNotRegistered(name string) string
MilestoneIsNotRegistered(name string) string
AssigneeIsNotJoining(userID string) string
AssigneeIsNotJoining(name string) string
ParentIssueIsNotRegistered(issueKey string) string
ParentIssueAlreadyRegisteredAsChildIssue(issueIDOrKey interface{}) string

Expand Down Expand Up @@ -96,8 +96,8 @@ func (m *Japanese) MilestoneIsNotRegistered(name string) string {
return fmt.Sprintf("課題のマイルストーン (%v) は登録されていません", name)
}

func (m *Japanese) AssigneeIsNotJoining(userID string) string {
return fmt.Sprintf("課題の担当者 (%v) はプロジェクトに参加していません", userID)
func (m *Japanese) AssigneeIsNotJoining(name string) string {
return fmt.Sprintf("課題の担当者 (%v) はプロジェクトに参加していません", name)
}

func (m *Japanese) ParentIssueIsNotRegistered(issueKey string) string {
Expand Down Expand Up @@ -192,8 +192,8 @@ func (m *English) MilestoneIsNotRegistered(name string) string {
return fmt.Sprintf("The milestone (%v) is not registered", name)
}

func (m *English) AssigneeIsNotJoining(userID string) string {
return fmt.Sprintf("The assignee (%v) is not joining in the project", userID)
func (m *English) AssigneeIsNotJoining(name string) string {
return fmt.Sprintf("The assignee (%v) is not joining in the project", name)
}

func (m *English) ParentIssueIsNotRegistered(issueKey string) string {
Expand Down
8 changes: 4 additions & 4 deletions bbir/repository.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ func (s *IssueHTTPClient) AddIssue(ctx context.Context, projectID ProjectID, sum

type ProjectRepository interface {
GetProjectID() ProjectID
FindUserByUserID(userID string) *v2.User
FindUserByName(name string) *v2.User
FindIssueTypeByName(name string) *v2.IssueType
FindCategoryByName(name string) *v2.Category
FindVersionByName(name string) *v2.Version
Expand Down Expand Up @@ -85,8 +85,8 @@ func (s *ProjectHTTPClient) GetProjectID() ProjectID {
return ProjectID(s.project.ID)
}

func (s *ProjectHTTPClient) FindUserByUserID(userID string) *v2.User {
v, ok := s.users[userID]
func (s *ProjectHTTPClient) FindUserByName(name string) *v2.User {
v, ok := s.users[name]
if !ok {
return nil
}
Expand Down Expand Up @@ -133,7 +133,7 @@ func (s *ProjectHTTPClient) Prefetch(ctx context.Context) error {
return err
}
for _, v := range users {
s.users[v.UserID] = v
s.users[v.Name] = v
}
return nil
},
Expand Down
22 changes: 11 additions & 11 deletions bbir/repository_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ func (r *IssueRepositoryAsMock) AddIssue(ctx context.Context, projectID ProjectI

type ProjectRepositoryAsMock struct {
getProjectID func() ProjectID
findUserByUserID func(userID string) *User
findUserByName func(name string) *User
findIssueTypeByName func(name string) *IssueType
findCategoryByName func(name string) *Category
findVersionByName func(name string) *Version
Expand All @@ -36,8 +36,8 @@ func (r *ProjectRepositoryAsMock) GetProjectID() ProjectID {
return r.getProjectID()
}

func (r *ProjectRepositoryAsMock) FindUserByUserID(userID string) *User {
return r.findUserByUserID(userID)
func (r *ProjectRepositoryAsMock) FindUserByName(name string) *User {
return r.findUserByName(name)
}

func (r *ProjectRepositoryAsMock) FindIssueTypeByName(name string) *IssueType {
Expand Down Expand Up @@ -68,9 +68,9 @@ func NewInjectorForRepositoryTest(t *testing.T) shot.Injector {
}, nil
},
getProjectUsers: func(ctx context.Context, id ProjectID) ([]*User, error) {
user1 := &User{ID: 1, UserID: "ken"}
user2 := &User{ID: 2, UserID: "taro"}
user3 := &User{ID: 3, UserID: "hana"}
user1 := &User{ID: 1, Name: "ken"}
user2 := &User{ID: 2, Name: "taro"}
user3 := &User{ID: 3, Name: "hana"}
return []*User{user1, user2, user3}, nil
},
getIssueTypes: func(ctx context.Context, id ProjectID) ([]*IssueType, error) {
Expand Down Expand Up @@ -155,24 +155,24 @@ func Test_ProjectHTTPClient_GetProjectID(t *testing.T) {
}
}

func Test_ProjectHTTPClient_FindUserByUserID_should_return_user_that_match_name(t *testing.T) {
func Test_ProjectHTTPClient_FindUserByName_should_return_user_that_match_name(t *testing.T) {
injector := NewInjectorForRepositoryTest(t)
project := injector.Get(new(ProjectRepository)).(*ProjectHTTPClient)
want := "ken"
result := project.FindUserByUserID(want)
result := project.FindUserByName(want)
if result == nil {
t.Error("Result is nil")
}
if want != result.UserID {
if want != result.Name {
t.Errorf("Could not match result. want: %v, result: %v", want, result)
}
}

func Test_ProjectHTTPClient_FindUserByUserID_should_return_nil_if_does_not_match_userID(t *testing.T) {
func Test_ProjectHTTPClient_FindUserByName_should_return_nil_if_does_not_match_name(t *testing.T) {
injector := NewInjectorForRepositoryTest(t)
project := injector.Get(new(ProjectRepository)).(*ProjectHTTPClient)
want := "xxx"
result := project.FindUserByUserID(want)
result := project.FindUserByName(want)
if result != nil {
t.Error("Result is not nil")
}
Expand Down
2 changes: 1 addition & 1 deletion testdata/example.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Summary (Required), Description, StartDate, DueDate, EstimatedHours, ActualHours, IssueType (Required), Category, Version, Milestone, Priority, Assignee, ParentIssue
Summary (Required), Description, StartDate, DueDate, EstimatedHours, ActualHours, IssueTypeName (Required), CategoryName, VersionName, MilestoneName, PriorityID, AssigneeName, ParentIssueKey
Summary1,Description1,2017/01/01,2017/01/02,1.00,2.00,task,web,sprint1,sprint2,2,,
Summary2,Description2,2017/02/01,2017/02/02,3.00,4.00,task,web,sprint1,sprint2,3,,
Summary3,Description3,2017/03/01,2017/03/02,5.00,6.00,task,web,sprint1,sprint2,4,,
Expand Down
2 changes: 1 addition & 1 deletion testdata/example_ja.csv
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
件名(必須),詳細,開始日,期限日,予定時間,実績時間,種別名(必須),カテゴリ名,発生バージョン名,マイルストーン名,優先度ID,担当者ユーザ名,親課題
件名(必須),詳細,開始日,期限日,予定時間,実績時間,種別名(必須),カテゴリ名,発生バージョン名,マイルストーン名,優先度ID,担当者ユーザ名,親課題キー
テスト件名1,テスト詳細1です,2017/01/01,2017/01/02,1.00,2.00,task,web,sprint1,sprint2,2,,
テスト件名2,テスト詳細2です,2017/02/01,2017/02/02,3.00,4.00,task,web,sprint1,sprint2,3,,
テスト件名3,テスト詳細3です,2017/03/01,2017/03/02,5.00,6.00,task,web,sprint1,sprint2,4,,
Expand Down

0 comments on commit cc19d90

Please sign in to comment.