Skip to content

Commit 8fb5b81

Browse files
author
bhupeshbhatia
committed
Insert: Auto-generate UserID if absent
1 parent 6fca6c0 commit 8fb5b81

File tree

2 files changed

+12
-40
lines changed

2 files changed

+12
-40
lines changed

user/insert.go

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -28,16 +28,19 @@ func Insert(collection *mongo.Collection, event *model.Event) *model.KafkaRespon
2828
}
2929

3030
if user.UserID == (uuuid.UUID{}) {
31-
err = errors.New("missing UserID")
32-
err = errors.Wrap(err, "Insert")
33-
log.Println(err)
34-
return &model.KafkaResponse{
35-
AggregateID: event.AggregateID,
36-
CorrelationID: event.CorrelationID,
37-
Error: err.Error(),
38-
ErrorCode: InternalError,
39-
UUID: event.TimeUUID,
31+
userID, err := uuuid.NewV4()
32+
if err != nil {
33+
err = errors.Wrap(err, "Insert: Error generating UserID")
34+
log.Println(err)
35+
return &model.KafkaResponse{
36+
AggregateID: event.AggregateID,
37+
CorrelationID: event.CorrelationID,
38+
Error: err.Error(),
39+
ErrorCode: InternalError,
40+
UUID: event.TimeUUID,
41+
}
4042
}
43+
user.UserID = userID
4144
}
4245
if user.FirstName == "" {
4346
err = errors.New("missing FirstName")

user/user_validations_test.go

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -65,37 +65,6 @@ var _ = Describe("UserAggregate", func() {
6565
}
6666
})
6767

68-
It("should return error if userID is empty", func() {
69-
user.UserID = uuuid.UUID{}
70-
marshalUser, err := json.Marshal(user)
71-
Expect(err).ToNot(HaveOccurred())
72-
73-
timeUUID, err := uuuid.NewV1()
74-
Expect(err).ToNot(HaveOccurred())
75-
cid, err := uuuid.NewV4()
76-
Expect(err).ToNot(HaveOccurred())
77-
uid, err := uuuid.NewV4()
78-
Expect(err).ToNot(HaveOccurred())
79-
80-
mockEvent := &model.Event{
81-
Action: "insert",
82-
CorrelationID: cid,
83-
AggregateID: 1,
84-
Data: marshalUser,
85-
Timestamp: time.Now(),
86-
UserUUID: uid,
87-
TimeUUID: timeUUID,
88-
Version: 3,
89-
YearBucket: 2018,
90-
}
91-
kr := Insert(nil, mockEvent)
92-
Expect(kr.AggregateID).To(Equal(mockEvent.AggregateID))
93-
Expect(kr.CorrelationID).To(Equal(mockEvent.CorrelationID))
94-
Expect(kr.Error).ToNot(BeEmpty())
95-
Expect(kr.ErrorCode).To(Equal(int16(InternalError)))
96-
Expect(kr.UUID).To(Equal(mockEvent.TimeUUID))
97-
})
98-
9968
It("should return error if firstName is empty", func() {
10069
user.FirstName = ""
10170
marshalUser, err := json.Marshal(user)

0 commit comments

Comments
 (0)