Skip to content

Commit f3af93d

Browse files
Sah, NandeshwarSah, Nandeshwar
authored andcommitted
Added optional parameter to support fixed pool for goroutines
1 parent eff3747 commit f3af93d

39 files changed

+133300
-25508
lines changed

fp/dedupe_test.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,29 @@ func TestDedupeStr(t *testing.T) {
292292
}
293293
}
294294

295+
func TestDedupeBool(t *testing.T) {
296+
var vt bool = true
297+
var vf bool = false
298+
299+
expectedList := []bool{vt, vf, vt}
300+
givenList := []bool{vt, vt, vf, vf, vf, vt, vt, vt, vt, vt, vt}
301+
r := DedupeBool(givenList)
302+
if !reflect.DeepEqual(r, expectedList) {
303+
t.Errorf("TestDedupeBool failed. acutal_list=%v, expected_list=%v", r, expectedList)
304+
}
305+
306+
expectedListPtr := []*bool{&vt, &vf, &vt, &vf}
307+
givenListPtr := []*bool{&vt, &vt, &vf, &vf, &vf, &vt, &vf, &vf, &vf, &vf, &vf}
308+
rPtr := DedupeBoolPtr(givenListPtr)
309+
if !reflect.DeepEqual(rPtr, expectedListPtr) {
310+
t.Errorf("TestDedupeBoolPtr failed. acutal_list=%v, expected_listPtr=%v", rPtr, expectedListPtr)
311+
}
312+
313+
if *expectedListPtr[0] != *rPtr[0] {
314+
t.Errorf("TestDedupeBoolPtr failed.")
315+
}
316+
}
317+
295318
func TestDedupeFloat32(t *testing.T) {
296319
var v0 float32
297320
var v1 float32 = 1

fp/filtermapioerr_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ func notOneIntStrNumErr(num int) (bool, error) {
507507
}
508508

509509
func someLogicIntStrNumErr(num int) (string, error) {
510-
var r string = string(0)
510+
var r string = "0"
511511
if num == 3 {
512512
return "0", errors.New("3 is not valid number for this test")
513513
}
@@ -1175,7 +1175,7 @@ func notOneInt64StrNumErr(num int64) (bool, error) {
11751175
}
11761176

11771177
func someLogicInt64StrNumErr(num int64) (string, error) {
1178-
var r string = string(0)
1178+
var r string = "0"
11791179
if num == 3 {
11801180
return "0", errors.New("3 is not valid number for this test")
11811181
}
@@ -1843,7 +1843,7 @@ func notOneInt32StrNumErr(num int32) (bool, error) {
18431843
}
18441844

18451845
func someLogicInt32StrNumErr(num int32) (string, error) {
1846-
var r string = string(0)
1846+
var r string = "0"
18471847
if num == 3 {
18481848
return "0", errors.New("3 is not valid number for this test")
18491849
}
@@ -2511,7 +2511,7 @@ func notOneInt16StrNumErr(num int16) (bool, error) {
25112511
}
25122512

25132513
func someLogicInt16StrNumErr(num int16) (string, error) {
2514-
var r string = string(0)
2514+
var r string = "0"
25152515
if num == 3 {
25162516
return "0", errors.New("3 is not valid number for this test")
25172517
}
@@ -3179,7 +3179,7 @@ func notOneInt8StrNumErr(num int8) (bool, error) {
31793179
}
31803180

31813181
func someLogicInt8StrNumErr(num int8) (string, error) {
3182-
var r string = string(0)
3182+
var r string = "0"
31833183
if num == 3 {
31843184
return "0", errors.New("3 is not valid number for this test")
31853185
}
@@ -3847,7 +3847,7 @@ func notOneUintStrNumErr(num uint) (bool, error) {
38473847
}
38483848

38493849
func someLogicUintStrNumErr(num uint) (string, error) {
3850-
var r string = string(0)
3850+
var r string = "0"
38513851
if num == 3 {
38523852
return "0", errors.New("3 is not valid number for this test")
38533853
}
@@ -4515,7 +4515,7 @@ func notOneUint64StrNumErr(num uint64) (bool, error) {
45154515
}
45164516

45174517
func someLogicUint64StrNumErr(num uint64) (string, error) {
4518-
var r string = string(0)
4518+
var r string = "0"
45194519
if num == 3 {
45204520
return "0", errors.New("3 is not valid number for this test")
45214521
}
@@ -5183,7 +5183,7 @@ func notOneUint32StrNumErr(num uint32) (bool, error) {
51835183
}
51845184

51855185
func someLogicUint32StrNumErr(num uint32) (string, error) {
5186-
var r string = string(0)
5186+
var r string = "0"
51875187
if num == 3 {
51885188
return "0", errors.New("3 is not valid number for this test")
51895189
}
@@ -5851,7 +5851,7 @@ func notOneUint16StrNumErr(num uint16) (bool, error) {
58515851
}
58525852

58535853
func someLogicUint16StrNumErr(num uint16) (string, error) {
5854-
var r string = string(0)
5854+
var r string = "0"
58555855
if num == 3 {
58565856
return "0", errors.New("3 is not valid number for this test")
58575857
}
@@ -6519,7 +6519,7 @@ func notOneUint8StrNumErr(num uint8) (bool, error) {
65196519
}
65206520

65216521
func someLogicUint8StrNumErr(num uint8) (string, error) {
6522-
var r string = string(0)
6522+
var r string = "0"
65236523
if num == 3 {
65246524
return "0", errors.New("3 is not valid number for this test")
65256525
}
@@ -8748,7 +8748,7 @@ func notOneFloat32StrNumErr(num float32) (bool, error) {
87488748
}
87498749

87508750
func someLogicFloat32StrNumErr(num float32) (string, error) {
8751-
var r string = string(0)
8751+
var r string = "0"
87528752
if num == 3 {
87538753
return "0", errors.New("3 is not valid number for this test")
87548754
}
@@ -9416,7 +9416,7 @@ func notOneFloat64StrNumErr(num float64) (bool, error) {
94169416
}
94179417

94189418
func someLogicFloat64StrNumErr(num float64) (string, error) {
9419-
var r string = string(0)
9419+
var r string = "0"
94209420
if num == 3 {
94219421
return "0", errors.New("3 is not valid number for this test")
94229422
}

fp/filtermapioptr_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ func notOneIntStrNumPtr(num *int) bool {
329329
}
330330

331331
func someLogicIntStrNumPtr(num *int) *string {
332-
var r string = string(0)
332+
var r string = "0"
333333
if *num == 10 {
334334
r = "10"
335335
return &r
@@ -760,7 +760,7 @@ func notOneInt64StrNumPtr(num *int64) bool {
760760
}
761761

762762
func someLogicInt64StrNumPtr(num *int64) *string {
763-
var r string = string(0)
763+
var r string = "0"
764764
if *num == 10 {
765765
r = "10"
766766
return &r
@@ -1191,7 +1191,7 @@ func notOneInt32StrNumPtr(num *int32) bool {
11911191
}
11921192

11931193
func someLogicInt32StrNumPtr(num *int32) *string {
1194-
var r string = string(0)
1194+
var r string = "0"
11951195
if *num == 10 {
11961196
r = "10"
11971197
return &r
@@ -1622,7 +1622,7 @@ func notOneInt16StrNumPtr(num *int16) bool {
16221622
}
16231623

16241624
func someLogicInt16StrNumPtr(num *int16) *string {
1625-
var r string = string(0)
1625+
var r string = "0"
16261626
if *num == 10 {
16271627
r = "10"
16281628
return &r
@@ -2053,7 +2053,7 @@ func notOneInt8StrNumPtr(num *int8) bool {
20532053
}
20542054

20552055
func someLogicInt8StrNumPtr(num *int8) *string {
2056-
var r string = string(0)
2056+
var r string = "0"
20572057
if *num == 10 {
20582058
r = "10"
20592059
return &r
@@ -2484,7 +2484,7 @@ func notOneUintStrNumPtr(num *uint) bool {
24842484
}
24852485

24862486
func someLogicUintStrNumPtr(num *uint) *string {
2487-
var r string = string(0)
2487+
var r string = "0"
24882488
if *num == 10 {
24892489
r = "10"
24902490
return &r
@@ -2915,7 +2915,7 @@ func notOneUint64StrNumPtr(num *uint64) bool {
29152915
}
29162916

29172917
func someLogicUint64StrNumPtr(num *uint64) *string {
2918-
var r string = string(0)
2918+
var r string = "0"
29192919
if *num == 10 {
29202920
r = "10"
29212921
return &r
@@ -3346,7 +3346,7 @@ func notOneUint32StrNumPtr(num *uint32) bool {
33463346
}
33473347

33483348
func someLogicUint32StrNumPtr(num *uint32) *string {
3349-
var r string = string(0)
3349+
var r string = "0"
33503350
if *num == 10 {
33513351
r = "10"
33523352
return &r
@@ -3777,7 +3777,7 @@ func notOneUint16StrNumPtr(num *uint16) bool {
37773777
}
37783778

37793779
func someLogicUint16StrNumPtr(num *uint16) *string {
3780-
var r string = string(0)
3780+
var r string = "0"
37813781
if *num == 10 {
37823782
r = "10"
37833783
return &r
@@ -4208,7 +4208,7 @@ func notOneUint8StrNumPtr(num *uint8) bool {
42084208
}
42094209

42104210
func someLogicUint8StrNumPtr(num *uint8) *string {
4211-
var r string = string(0)
4211+
var r string = "0"
42124212
if *num == 10 {
42134213
r = "10"
42144214
return &r
@@ -5637,7 +5637,7 @@ func notOneFloat32StrNumPtr(num *float32) bool {
56375637
}
56385638

56395639
func someLogicFloat32StrNumPtr(num *float32) *string {
5640-
var r string = string(0)
5640+
var r string = "0"
56415641
if *num == 10 {
56425642
r = "10"
56435643
return &r
@@ -6068,7 +6068,7 @@ func notOneFloat64StrNumPtr(num *float64) bool {
60686068
}
60696069

60706070
func someLogicFloat64StrNumPtr(num *float64) *string {
6071-
var r string = string(0)
6071+
var r string = "0"
60726072
if *num == 10 {
60736073
r = "10"
60746074
return &r

fp/filtermapioptrerr_test.go

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -507,7 +507,7 @@ func notOneIntStrNumPtrErr(num *int) (bool, error) {
507507
}
508508

509509
func someLogicIntStrNumPtrErr(num *int) (*string, error) {
510-
var r string = string(0)
510+
var r string = "0"
511511
if *num == 3 {
512512
return nil, errors.New("3 is not valid number for this test")
513513
}
@@ -1175,7 +1175,7 @@ func notOneInt64StrNumPtrErr(num *int64) (bool, error) {
11751175
}
11761176

11771177
func someLogicInt64StrNumPtrErr(num *int64) (*string, error) {
1178-
var r string = string(0)
1178+
var r string = "0"
11791179
if *num == 3 {
11801180
return nil, errors.New("3 is not valid number for this test")
11811181
}
@@ -1843,7 +1843,7 @@ func notOneInt32StrNumPtrErr(num *int32) (bool, error) {
18431843
}
18441844

18451845
func someLogicInt32StrNumPtrErr(num *int32) (*string, error) {
1846-
var r string = string(0)
1846+
var r string = "0"
18471847
if *num == 3 {
18481848
return nil, errors.New("3 is not valid number for this test")
18491849
}
@@ -2511,7 +2511,7 @@ func notOneInt16StrNumPtrErr(num *int16) (bool, error) {
25112511
}
25122512

25132513
func someLogicInt16StrNumPtrErr(num *int16) (*string, error) {
2514-
var r string = string(0)
2514+
var r string = "0"
25152515
if *num == 3 {
25162516
return nil, errors.New("3 is not valid number for this test")
25172517
}
@@ -3179,7 +3179,7 @@ func notOneInt8StrNumPtrErr(num *int8) (bool, error) {
31793179
}
31803180

31813181
func someLogicInt8StrNumPtrErr(num *int8) (*string, error) {
3182-
var r string = string(0)
3182+
var r string = "0"
31833183
if *num == 3 {
31843184
return nil, errors.New("3 is not valid number for this test")
31853185
}
@@ -3847,7 +3847,7 @@ func notOneUintStrNumPtrErr(num *uint) (bool, error) {
38473847
}
38483848

38493849
func someLogicUintStrNumPtrErr(num *uint) (*string, error) {
3850-
var r string = string(0)
3850+
var r string = "0"
38513851
if *num == 3 {
38523852
return nil, errors.New("3 is not valid number for this test")
38533853
}
@@ -4515,7 +4515,7 @@ func notOneUint64StrNumPtrErr(num *uint64) (bool, error) {
45154515
}
45164516

45174517
func someLogicUint64StrNumPtrErr(num *uint64) (*string, error) {
4518-
var r string = string(0)
4518+
var r string = "0"
45194519
if *num == 3 {
45204520
return nil, errors.New("3 is not valid number for this test")
45214521
}
@@ -5183,7 +5183,7 @@ func notOneUint32StrNumPtrErr(num *uint32) (bool, error) {
51835183
}
51845184

51855185
func someLogicUint32StrNumPtrErr(num *uint32) (*string, error) {
5186-
var r string = string(0)
5186+
var r string = "0"
51875187
if *num == 3 {
51885188
return nil, errors.New("3 is not valid number for this test")
51895189
}
@@ -5851,7 +5851,7 @@ func notOneUint16StrNumPtrErr(num *uint16) (bool, error) {
58515851
}
58525852

58535853
func someLogicUint16StrNumPtrErr(num *uint16) (*string, error) {
5854-
var r string = string(0)
5854+
var r string = "0"
58555855
if *num == 3 {
58565856
return nil, errors.New("3 is not valid number for this test")
58575857
}
@@ -6519,7 +6519,7 @@ func notOneUint8StrNumPtrErr(num *uint8) (bool, error) {
65196519
}
65206520

65216521
func someLogicUint8StrNumPtrErr(num *uint8) (*string, error) {
6522-
var r string = string(0)
6522+
var r string = "0"
65236523
if *num == 3 {
65246524
return nil, errors.New("3 is not valid number for this test")
65256525
}
@@ -8748,7 +8748,7 @@ func notOneFloat32StrNumPtrErr(num *float32) (bool, error) {
87488748
}
87498749

87508750
func someLogicFloat32StrNumPtrErr(num *float32) (*string, error) {
8751-
var r string = string(0)
8751+
var r string = "0"
87528752
if *num == 3 {
87538753
return nil, errors.New("3 is not valid number for this test")
87548754
}
@@ -9416,7 +9416,7 @@ func notOneFloat64StrNumPtrErr(num *float64) (bool, error) {
94169416
}
94179417

94189418
func someLogicFloat64StrNumPtrErr(num *float64) (*string, error) {
9419-
var r string = string(0)
9419+
var r string = "0"
94209420
if *num == 3 {
94219421
return nil, errors.New("3 is not valid number for this test")
94229422
}

fp/mapErr_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ func TestMapStrErr(t *testing.T) {
530530
partialAddStr := func(num string) (string, error) {
531531
r, err := addStrErr(v5, num)
532532
if err != nil {
533-
return string(0), err
533+
return "0", err
534534
}
535535
return r, nil
536536
}

fp/map_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package fp
22

33
import (
4+
"strconv"
45
"strings"
56
"testing"
67
)
@@ -442,7 +443,7 @@ func BenchmarkMapStr(b *testing.B) {
442443
b.N = iterations
443444
list := make([]string, size)
444445
for i := 0; i < size; i++ {
445-
list[i] = string(i)
446+
list[i] = strconv.Itoa(i)
446447
}
447448

448449
partialPrependStr := func(str string) string { return prependStr(str, "Name:") }

fp/optional.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
package fp
2+
3+
type Optional struct {
4+
FixedPool int // number of goroutines
5+
RandomOrder bool
6+
}

0 commit comments

Comments
 (0)