Skip to content

Commit 4313a44

Browse files
authored
Fixing timestamp issue and adding unit tests. (#345)
1 parent 4acafde commit 4313a44

File tree

3 files changed

+12
-3
lines changed

3 files changed

+12
-3
lines changed

pkg/event/dispatcher_test.go

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/****************************************************************************
2-
* Copyright 2019-2020, Optimizely, Inc. and contributors *
2+
* Copyright 2019-2020,2022 Optimizely, Inc. and contributors *
33
* *
44
* Licensed under the Apache License, Version 2.0 (the "License"); *
55
* you may not use this file except in compliance with the License. *
@@ -120,6 +120,7 @@ func TestQueueEventDispatcher_DispatchEvent(t *testing.T) {
120120
conversionUserEvent := CreateConversionUserEvent(config, entities.Event{ExperimentIds: []string{"15402980349"}, ID: "15368860886", Key: "sample_conversion"}, userContext, eventTags)
121121

122122
batch := createBatchEvent(conversionUserEvent, createVisitorFromUserEvent(conversionUserEvent))
123+
assert.Equal(t, conversionUserEvent.Timestamp, batch.Visitors[0].Snapshots[0].Events[0].Timestamp)
123124

124125
logEvent := createLogEvent(batch, DefaultEventEndPoint)
125126

@@ -178,6 +179,7 @@ func TestQueueEventDispatcher_FailDispath(t *testing.T) {
178179
conversionUserEvent := CreateConversionUserEvent(config, entities.Event{ExperimentIds: []string{"15402980349"}, ID: "15368860886", Key: "sample_conversion"}, userContext, eventTags)
179180

180181
batch := createBatchEvent(conversionUserEvent, createVisitorFromUserEvent(conversionUserEvent))
182+
assert.Equal(t, conversionUserEvent.Timestamp, batch.Visitors[0].Snapshots[0].Events[0].Timestamp)
181183

182184
logEvent := createLogEvent(batch, DefaultEventEndPoint)
183185

pkg/event/factory.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ func createImpressionVisitor(userEvent UserEvent) Visitor {
125125
decision.Metadata = userEvent.Impression.Metadata
126126

127127
dispatchEvent := SnapshotEvent{}
128-
dispatchEvent.Timestamp = makeTimestamp()
128+
dispatchEvent.Timestamp = userEvent.Timestamp
129129
dispatchEvent.Key = userEvent.Impression.Key
130130
dispatchEvent.EntityID = userEvent.Impression.EntityID
131131
dispatchEvent.UUID = guuid.New().String()
@@ -189,7 +189,7 @@ func createVisitorFromUserEvent(event UserEvent) Visitor {
189189
func createConversionVisitor(userEvent UserEvent) Visitor {
190190

191191
dispatchEvent := SnapshotEvent{}
192-
dispatchEvent.Timestamp = makeTimestamp()
192+
dispatchEvent.Timestamp = userEvent.Timestamp
193193
dispatchEvent.Key = userEvent.Conversion.Key
194194
dispatchEvent.EntityID = userEvent.Conversion.EntityID
195195
dispatchEvent.UUID = userEvent.UUID

pkg/event/factory_test.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,12 @@ func BuildTestConversionEvent() UserEvent {
115115
return conversionUserEvent
116116
}
117117

118+
func TestVisitorTimestampMatchesUserEventTimestamp(t *testing.T) {
119+
impressionUserEvent := BuildTestImpressionEvent()
120+
visitor := createVisitorFromUserEvent(impressionUserEvent)
121+
assert.Equal(t, impressionUserEvent.Timestamp, visitor.Snapshots[0].Events[0].Timestamp)
122+
}
123+
118124
func TestCreateEmptyEvent(t *testing.T) {
119125
impressionUserEvent := BuildTestImpressionEvent()
120126

@@ -177,6 +183,7 @@ func TestCreateConversionEventRevenue(t *testing.T) {
177183
assert.Equal(t, 25.1, *conversionUserEvent.Conversion.Value)
178184

179185
batch := createBatchEvent(conversionUserEvent, createVisitorFromUserEvent(conversionUserEvent))
186+
assert.Equal(t, conversionUserEvent.Timestamp, batch.Visitors[0].Snapshots[0].Events[0].Timestamp)
180187
assert.Equal(t, int64(55), *batch.Visitors[0].Snapshots[0].Events[0].Revenue)
181188
assert.Equal(t, 25.1, *batch.Visitors[0].Snapshots[0].Events[0].Value)
182189

0 commit comments

Comments
 (0)