Skip to content

Commit 2cbd8bd

Browse files
committed
Make label private
1 parent a7eb977 commit 2cbd8bd

File tree

4 files changed

+18
-22
lines changed

4 files changed

+18
-22
lines changed

conf/conf.go

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ package conf
22

33
import (
44
"crypto/tls"
5+
6+
"github.com/splitio/go-split-commons/v8/dtos"
57
)
68

79
// RedisConfig struct is used to cofigure the redis parameters
@@ -89,7 +91,7 @@ type AdvancedConfig struct {
8991
FlagsSpecVersion string
9092
LargeSegment *LargeSegmentConfig
9193
RulesConfig *RulesConfig
92-
FallbackTreatment FallbackTreatmentConf
94+
FallbackTreatment dtos.FallbackTreatmentConfig
9395
}
9496

9597
type LargeSegmentConfig struct {
@@ -106,13 +108,3 @@ type RulesConfig struct {
106108
FeatureFlagRules []string
107109
RuleBasedSegmentRules []string
108110
}
109-
110-
type FallbackTreatmentConf struct {
111-
GlobalFallbackTreatment *FallbackTreatmentForConf
112-
ByFlagFallbackTreatment map[string]FallbackTreatmentForConf
113-
}
114-
115-
type FallbackTreatmentForConf struct {
116-
Treatment *string
117-
Config *string
118-
}

dtos/fallbacktreatment.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,11 @@ const (
77
type FallbackTreatment struct {
88
Treatment *string
99
Config *string
10-
Label *string
10+
label *string
11+
}
12+
13+
func (f *FallbackTreatment) Label() *string {
14+
return f.label
1115
}
1216

1317
type FallbackTreatmentConfig struct {
@@ -36,22 +40,22 @@ func (f *FallbackTreatmentCalculatorImp) Resolve(flagName string, label *string)
3640
return FallbackTreatment{
3741
Treatment: val.Treatment,
3842
Config: val.Config,
39-
Label: f.resolveLabel(label),
43+
label: f.resolveLabel(label),
4044
}
4145
}
4246
}
4347
if f.fallbackTreatmentConfig.GlobalFallbackTreatment != nil {
4448
return FallbackTreatment{
4549
Treatment: f.fallbackTreatmentConfig.GlobalFallbackTreatment.Treatment,
4650
Config: f.fallbackTreatmentConfig.GlobalFallbackTreatment.Config,
47-
Label: f.resolveLabel(label),
51+
label: f.resolveLabel(label),
4852
}
4953
}
5054
}
5155
controlTreatment := "control"
5256
return FallbackTreatment{
5357
Treatment: &controlTreatment,
54-
Label: label,
58+
label: label,
5559
}
5660
}
5761

dtos/fallbacktreatment_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,26 +29,26 @@ func TestFallbackTreatmentCalculatorResolve(t *testing.T) {
2929
result := calc.Resolve("flag1", &label)
3030
assert.Equal(t, "flag1_treatment", *result.Treatment)
3131
assert.Equal(t, &stringConfig, result.Config)
32-
assert.Equal(t, "fallback - some_label", *result.Label)
32+
assert.Equal(t, "fallback - some_label", *result.label)
3333

3434
// Test fallback to global treatment when flag not found
3535
result = calc.Resolve("flag2", &label)
3636
assert.Equal(t, "global_treatment", *result.Treatment)
3737
assert.Nil(t, result.Config)
38-
assert.Equal(t, "fallback - some_label", *result.Label)
38+
assert.Equal(t, "fallback - some_label", *result.label)
3939

4040
// Test nil label handling
4141
result = calc.Resolve("flag1", nil)
4242
assert.Equal(t, "flag1_treatment", *result.Treatment)
4343
assert.Equal(t, &stringConfig, result.Config)
44-
assert.Nil(t, result.Label)
44+
assert.Nil(t, result.label)
4545

4646
// Test default control when no config
4747
calcNoConfig := NewFallbackTreatmentCalculatorImp(nil)
4848
result = calcNoConfig.Resolve("flag1", &label)
4949
assert.Equal(t, "control", *result.Treatment)
5050
assert.Nil(t, result.Config)
51-
assert.Equal(t, "some_label", *result.Label)
51+
assert.Equal(t, "some_label", *result.label)
5252

5353
// Test global treatment when no flag-specific treatments exist
5454
configGlobalOnly := &FallbackTreatmentConfig{
@@ -61,5 +61,5 @@ func TestFallbackTreatmentCalculatorResolve(t *testing.T) {
6161
result = calcGlobalOnly.Resolve("any_flag", &label)
6262
assert.Equal(t, "global_treatment", *result.Treatment)
6363
assert.Nil(t, result.Config)
64-
assert.Equal(t, "fallback - some_label", *result.Label)
64+
assert.Equal(t, "fallback - some_label", *result.label)
6565
}

engine/evaluator/evaluator.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ func (e *Evaluator) evaluateTreatment(key string, bucketingKey string, featureFl
7272
if splitDto == nil {
7373
fallbackTratment := e.fallbackTratmentCalculator.Resolve(featureFlag, &label)
7474
e.logger.Warning(fmt.Sprintf("Feature flag %s not found, returning fallback treatment.", featureFlag))
75-
return &Result{Treatment: *fallbackTratment.Treatment, Label: *fallbackTratment.Label, Config: fallbackTratment.Config}
75+
return &Result{Treatment: *fallbackTratment.Treatment, Label: *fallbackTratment.Label(), Config: fallbackTratment.Config}
7676
}
7777

7878
split := grammar.NewSplit(splitDto, e.logger, e.ruleBuilder)
@@ -122,7 +122,7 @@ func (e *Evaluator) evaluateTreatment(key string, bucketingKey string, featureFl
122122
fallbackTreatment := e.fallbackTratmentCalculator.Resolve(featureFlag, &label)
123123
return &Result{
124124
Treatment: *fallbackTreatment.Treatment,
125-
Label: *fallbackTreatment.Label,
125+
Label: *fallbackTreatment.Label(),
126126
Config: fallbackTreatment.Config,
127127
}
128128
}

0 commit comments

Comments
 (0)