Skip to content

Commit 09b6247

Browse files
committed
refactor: changing return of methods
1 parent 3b67049 commit 09b6247

File tree

6 files changed

+239
-46
lines changed

6 files changed

+239
-46
lines changed

go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@ require github.com/gocql/gocql v1.0.0
77
require (
88
github.com/davecgh/go-spew v1.1.0 // indirect
99
github.com/pmezard/go-difflib v1.0.0 // indirect
10+
github.com/scylladb/go-reflectx v1.0.1 // indirect
1011
github.com/stretchr/objx v0.1.0 // indirect
1112
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c // indirect
1213
)
1314

1415
require (
1516
github.com/golang/snappy v0.0.3 // indirect
1617
github.com/hailocab/go-hostpool v0.0.0-20160125115350-e80d13ce29ed // indirect
18+
github.com/scylladb/gocqlx/v2 v2.7.0
1719
github.com/stretchr/testify v1.7.1
1820
gopkg.in/inf.v0 v0.9.1 // indirect
1921
)

go.sum

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,10 @@ github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
1313
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
1414
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
1515
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
16+
github.com/scylladb/go-reflectx v1.0.1 h1:b917wZM7189pZdlND9PbIJ6NQxfDPfBvUaQ7cjj1iZQ=
17+
github.com/scylladb/go-reflectx v1.0.1/go.mod h1:rWnOfDIRWBGN0miMLIcoPt/Dhi2doCMZqwMCJ3KupFc=
18+
github.com/scylladb/gocqlx/v2 v2.7.0 h1:/w1VeJHCEAsg9eTculTvIS9eIe/VmEu0clhlH1CF7lc=
19+
github.com/scylladb/gocqlx/v2 v2.7.0/go.mod h1:jKhM0/LkEAhEOSwd10TCMQdlC5x8aEzK7cXjQcPyMJ0=
1620
github.com/stretchr/objx v0.1.0 h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4=
1721
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
1822
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=

iterx.go

Lines changed: 81 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package gocqlxmock
33
import (
44
"reflect"
55

6+
"github.com/gocql/gocql"
67
"github.com/stretchr/testify/mock"
78
)
89

@@ -27,86 +28,152 @@ type IterxMock struct {
2728
mock.Mock
2829
}
2930

30-
func (mock *IterxMock) Unsafe() IIterx {
31+
func (mock IterxMock) Unsafe() IIterx {
3132
args := mock.Called()
3233

3334
return args.Get(0).(IIterx)
3435
}
3536

36-
func (mock *IterxMock) StructOnly() IIterx {
37+
func (mock IterxMock) StructOnly() IIterx {
3738
args := mock.Called()
3839

3940
return args.Get(0).(IIterx)
4041
}
4142

42-
func (mock *IterxMock) Get(dest interface{}) error {
43+
func (mock IterxMock) Get(dest interface{}) error {
4344
args := mock.Called(dest)
4445

4546
return args.Error(0)
4647
}
4748

48-
func (mock *IterxMock) scanAny(dest interface{}) bool {
49+
func (mock IterxMock) scanAny(dest interface{}) bool {
4950
args := mock.Called(dest)
5051

5152
return args.Get(0).(bool)
5253
}
5354

54-
func (mock *IterxMock) Select(dest interface{}) error {
55+
func (mock IterxMock) Select(dest interface{}) error {
5556
args := mock.Called(dest)
5657

5758
return args.Error(0)
5859
}
5960

60-
func (mock *IterxMock) scanAll(dest interface{}) bool {
61+
func (mock IterxMock) scanAll(dest interface{}) bool {
6162
args := mock.Called(dest)
6263

6364
return args.Get(0).(bool)
6465
}
6566

66-
func (mock *IterxMock) isScannable(t reflect.Type) bool {
67+
func (mock IterxMock) isScannable(t reflect.Type) bool {
6768
args := mock.Called(t)
6869

6970
return args.Get(0).(bool)
7071
}
7172

72-
func (mock *IterxMock) scan(value reflect.Value) bool {
73+
func (mock IterxMock) scan(value reflect.Value) bool {
7374
args := mock.Called(value)
7475

7576
return args.Get(0).(bool)
7677
}
7778

78-
func (mock *IterxMock) StructScan(dest interface{}) bool {
79+
func (mock IterxMock) StructScan(dest interface{}) bool {
7980
args := mock.Called(dest)
8081

8182
return args.Get(0).(bool)
8283
}
8384

84-
func (mock *IterxMock) structScan(value reflect.Value) bool {
85+
func (mock IterxMock) structScan(value reflect.Value) bool {
8586
args := mock.Called(value)
8687

8788
return args.Get(0).(bool)
8889
}
8990

90-
func (mock *IterxMock) fieldsByTraversal(value reflect.Value, traversals [][]int, values []interface{}) error {
91+
func (mock IterxMock) fieldsByTraversal(value reflect.Value, traversals [][]int, values []interface{}) error {
9192
args := mock.Called(value, traversals, values)
9293

9394
return args.Error(0)
9495
}
9596

96-
func (mock *IterxMock) Scan(dest ...interface{}) bool {
97+
func (mock IterxMock) Scan(dest ...interface{}) bool {
9798
args := mock.Called(dest)
9899

99100
return args.Get(0).(bool)
100101
}
101102

102-
func (mock *IterxMock) Close() error {
103+
func (mock IterxMock) Close() error {
103104
args := mock.Called()
104105

105106
return args.Error(0)
106107
}
107108

108-
func (mock *IterxMock) checkErrAndNotFound() error {
109+
func (mock IterxMock) checkErrAndNotFound() error {
109110
args := mock.Called()
110111

111112
return args.Error(0)
112113
}
114+
115+
// "Interface assertion"
116+
var (
117+
_ IIterx = IterxMock{}
118+
_ IIterx = iterx{}
119+
)
120+
121+
type iterx struct {
122+
i *gocql.Iter
123+
}
124+
125+
func (i iterx) Unsafe() IIterx {
126+
return i
127+
}
128+
129+
func (i iterx) StructOnly() IIterx {
130+
return i
131+
}
132+
133+
func (i iterx) Get(dest interface{}) error {
134+
return nil
135+
}
136+
137+
func (i iterx) scanAny(dest interface{}) bool {
138+
return true
139+
}
140+
141+
func (i iterx) Select(dest interface{}) error {
142+
return nil
143+
}
144+
145+
func (i iterx) scanAll(dest interface{}) bool {
146+
return true
147+
}
148+
149+
func (i iterx) isScannable(t reflect.Type) bool {
150+
return true
151+
}
152+
153+
func (i iterx) scan(value reflect.Value) bool {
154+
return true
155+
}
156+
157+
func (i iterx) StructScan(dest interface{}) bool {
158+
return true
159+
}
160+
161+
func (i iterx) structScan(value reflect.Value) bool {
162+
return true
163+
}
164+
165+
func (i iterx) fieldsByTraversal(value reflect.Value, traversals [][]int, values []interface{}) error {
166+
return nil
167+
}
168+
169+
func (i iterx) Scan(dest ...interface{}) bool {
170+
return true
171+
}
172+
173+
func (i iterx) Close() error {
174+
return nil
175+
}
176+
177+
func (i iterx) checkErrAndNotFound() error {
178+
return nil
179+
}

0 commit comments

Comments
 (0)