@@ -58,11 +58,11 @@ func (d *driverMock) Prune(time.Time) error {
58
58
return args .Error (1 )
59
59
}
60
60
61
- func newRecorder (maxArchiveSize int64 ) Recorder {
61
+ func newRecorder (maxArchiveSize int64 , clusterBaseDomain string ) Recorder {
62
62
driver := driverMock {}
63
63
driver .On ("Save" ).Return (nil , nil )
64
64
65
- anonymizer , _ := anonymization .NewAnonymizer ("" , nil , nil )
65
+ anonymizer , _ := anonymization .NewAnonymizer (clusterBaseDomain , nil , nil )
66
66
67
67
interval , _ := time .ParseDuration ("1m" )
68
68
return Recorder {
@@ -76,7 +76,7 @@ func newRecorder(maxArchiveSize int64) Recorder {
76
76
}
77
77
78
78
func Test_Record (t * testing.T ) {
79
- rec := newRecorder (MaxArchiveSize )
79
+ rec := newRecorder (MaxArchiveSize , "" )
80
80
err := rec .Record (record.Record {
81
81
Name : mock1Name ,
82
82
Item : RawReport {Data : "mock1" },
@@ -86,7 +86,7 @@ func Test_Record(t *testing.T) {
86
86
}
87
87
88
88
func Test_Record_Duplicated (t * testing.T ) {
89
- rec := newRecorder (MaxArchiveSize )
89
+ rec := newRecorder (MaxArchiveSize , "" )
90
90
_ = rec .Record (record.Record {
91
91
Name : mock1Name ,
92
92
Item : RawReport {Data : "mock1" },
@@ -102,7 +102,7 @@ func Test_Record_Duplicated(t *testing.T) {
102
102
}
103
103
104
104
func Test_Record_CantBeSerialized (t * testing.T ) {
105
- rec := newRecorder (MaxArchiveSize )
105
+ rec := newRecorder (MaxArchiveSize , "" )
106
106
err := rec .Record (record.Record {
107
107
Name : mock1Name ,
108
108
Item : RawInvalidReport {},
@@ -111,7 +111,7 @@ func Test_Record_CantBeSerialized(t *testing.T) {
111
111
}
112
112
113
113
func Test_Record_Flush (t * testing.T ) {
114
- rec := newRecorder (MaxArchiveSize )
114
+ rec := newRecorder (MaxArchiveSize , "" )
115
115
for i := range []int {1 , 2 , 3 } {
116
116
_ = rec .Record (record.Record {
117
117
Name : fmt .Sprintf ("config/mock%d" , i ),
@@ -124,15 +124,15 @@ func Test_Record_Flush(t *testing.T) {
124
124
}
125
125
126
126
func Test_Record_FlushEmptyRecorder (t * testing.T ) {
127
- rec := newRecorder (MaxArchiveSize )
127
+ rec := newRecorder (MaxArchiveSize , "" )
128
128
err := rec .Flush ()
129
129
assert .Nil (t , err )
130
130
}
131
131
132
132
func Test_Record_ArchiveSizeExceeded (t * testing.T ) {
133
133
data := "data bigger than 4 bytes"
134
134
maxArchiveSize := int64 (4 )
135
- rec := newRecorder (maxArchiveSize )
135
+ rec := newRecorder (maxArchiveSize , "" )
136
136
err := rec .Record (record.Record {
137
137
Name : mock1Name ,
138
138
Item : RawReport {
@@ -148,3 +148,44 @@ func Test_Record_ArchiveSizeExceeded(t *testing.T) {
148
148
len ([]byte (data )),
149
149
maxArchiveSize ))
150
150
}
151
+
152
+ func Test_Record_SizeDoesntGrowWithSameRecords (t * testing.T ) {
153
+ data := "testdata"
154
+ testRec := record.Record {
155
+ Name : mock1Name ,
156
+ Item : RawReport {
157
+ Data : data ,
158
+ },
159
+ }
160
+ rec := newRecorder (MaxArchiveSize , "" )
161
+ err := rec .Record (testRec )
162
+ assert .Nil (t , err )
163
+ // record again the same record
164
+ err = rec .Record (testRec )
165
+ assert .Nil (t , err )
166
+
167
+ // check that size refers only to one record data
168
+ assert .Equal (t , rec .size , int64 (len (data )))
169
+ err = rec .Flush ()
170
+ assert .Nil (t , err )
171
+ assert .Equal (t , rec .size , int64 (0 ))
172
+ }
173
+
174
+ func Test_ObfuscatedRecord_NameCorrect (t * testing.T ) {
175
+ clusterBaseDomain := "test"
176
+ testRecordName := fmt .Sprintf ("%s/%s-node-1" , mock1Name , clusterBaseDomain )
177
+ obfuscatedRecordName := fmt .Sprintf ("%s/%s-node-1" , mock1Name , anonymization .ClusterBaseDomainPlaceholder )
178
+ rec := newRecorder (MaxArchiveSize , clusterBaseDomain )
179
+ err := rec .Record (record.Record {
180
+ Name : testRecordName ,
181
+ Item : RawReport {
182
+ Data : "some data" ,
183
+ },
184
+ })
185
+ assert .Nil (t , err )
186
+ _ , exists := rec .records [obfuscatedRecordName ]
187
+ assert .True (t , exists , "can't find %s record name" , testRecordName )
188
+ err = rec .Flush ()
189
+ assert .Nil (t , err )
190
+ assert .Equal (t , rec .size , int64 (0 ))
191
+ }
0 commit comments