Skip to content

Commit

Permalink
Merge pull request #260 from /issues/259/main
Browse files Browse the repository at this point in the history
Support Slice
  • Loading branch information
54m authored Aug 29, 2024
2 parents c49bce7 + bfec0d5 commit c72f2cd
Show file tree
Hide file tree
Showing 8 changed files with 117 additions and 5 deletions.
8 changes: 8 additions & 0 deletions examples/different_dir/lock_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions examples/repository/task_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 18 additions & 0 deletions examples/task_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 0 additions & 4 deletions generator/templates/gen.go.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -1232,10 +1232,6 @@ func (repo *{{ .RepositoryStructName }}) searchByParam(v interface{}, param *{{
query = query.WherePath(firestore.FieldPath{{ $bracketsStart }}"{{ $fi.FsTag }}", key{{ $bracketsEnd }}, chain.Operator, value)
}
}
{{- else if eq $IsSlice true }}
for _, chain := range param.{{ $fi.Field }}.QueryGroup {
query = query.Where("{{ $fi.FsTag }}", chain.Operator, chain.Value)
}
{{- else if $fi.IsDocumentID }}
for _, chain := range param.{{ $fi.Field }}.QueryGroup {
var value interface{}
Expand Down
2 changes: 1 addition & 1 deletion generator/testfiles/auto/task.go
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ type Task struct {
Done2 bool `firestore:"done2"`
Count int `firestore:"count"`
Count64 int64 `firestore:"count64"`
NameList []string `firestore:"nameList"`
NameList []string `firestore:"nameList" indexer:"e"`
Proportion float64 `firestore:"proportion" indexer:"e"`
Flag map[string]float64 `firestore:"flag"`
SliceSubTask []*SubTask `firestore:"slice_sub_task"`
Expand Down
38 changes: 38 additions & 0 deletions generator/testfiles/auto/task_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

30 changes: 30 additions & 0 deletions generator/testfiles/auto/tests/model_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -724,6 +724,36 @@ func TestFirestoreQuery(t *testing.T) {
}
})

t.Run("[]string(10件) by filter", func(tr *testing.T) {
param := &model.TaskSearchParam{
NameList: model.NewQueryChainer().Filters("a", model.FilterTypeAddSomething).Filters("b", model.FilterTypeAddSomething),
}

tasks, err := taskRepo.Search(ctx, param, nil)
if err != nil {
tr.Fatalf("%+v", err)
}

if len(tasks) != 10 {
tr.Fatalf("unexpected length: %d (expected: %d)", len(tasks), 10)
}
})

t.Run("[]string(0件) by filter", func(tr *testing.T) {
param := &model.TaskSearchParam{
NameList: model.NewQueryChainer().Filters("d", model.FilterTypeAddSomething),
}

tasks, err := taskRepo.Search(ctx, param, nil)
if err != nil {
tr.Fatalf("%+v", err)
}

if len(tasks) != 0 {
tr.Fatalf("unexpected length: %d (expected: %d)", len(tasks), 10)
}
})

t.Run("[]Object(10件)", func(tr *testing.T) {
param := &model.TaskSearchParam{
SliceSubTask: model.NewQueryChainer().ArrayContainsAny([]*model.SubTask{{Name: "slice_struct"}}),
Expand Down
4 changes: 4 additions & 0 deletions generator/testfiles/not_auto/task_gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit c72f2cd

Please sign in to comment.