tsk-59: Changes to store and mock package

This commit is contained in:
phoenix
2025-12-31 14:28:09 -05:00
parent aefa26199d
commit 1a3a244c07
2 changed files with 24 additions and 6 deletions
@@ -28,16 +28,16 @@ func (m *PGMessageEventResponseStore) Create(ctx context.Context, mer *message.M
queryReturn := "RETURNING id"
if mer.ScheduledMessageEventId == uuid.Nil {
query = fmt.Sprintf("%s (response, user_id, sent, contact_id, message_id) VALUES ($1, $2, $3, $4, $5) %s", queryBase, queryReturn)
return m.db.QueryRow(ctx, query, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId).Scan(&mer.Id)
query = fmt.Sprintf("%s (response, user_id, sent, contact_id, message_id, status) VALUES ($1, $2, $3, $4, $5, $6) %s", queryBase, queryReturn)
return m.db.QueryRow(ctx, query, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId, mer.Status).Scan(&mer.Id)
} else {
query = fmt.Sprintf("%s (scheduled_message_event_id, response, user_id, sent, contact_id, message_id) VALUES ($1, $2, $3, $4, $5, $6) %s", queryBase, queryReturn)
return m.db.QueryRow(ctx, query, mer.ScheduledMessageEventId, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId).Scan(&mer.Id)
query = fmt.Sprintf("%s (scheduled_message_event_id, response, user_id, sent, contact_id, message_id, status) VALUES ($1, $2, $3, $4, $5, $6, $7) %s", queryBase, queryReturn)
return m.db.QueryRow(ctx, query, mer.ScheduledMessageEventId, mer.Response, mer.UserId, mer.Sent, mer.ContactId, mer.MessageId, mer.Status,).Scan(&mer.Id)
}
}
func (m *PGMessageEventResponseStore) GetWithUserId(ctx context.Context, userId uuid.UUID) ([]*message.MessageEventResponse, error) {
query := "SELECT id, scheduled_message_event_id, response, user_id, sent, contact_id, message_id FROM message_event_responses WHERE user_id = $1"
query := "SELECT id, scheduled_message_event_id, response, user_id, sent, contact_id, message_id, status FROM message_event_responses WHERE user_id = $1"
rows, err := m.db.Query(ctx, query)
if err != nil {
return nil, fmt.Errorf("Error querying: %w", err)
@@ -47,7 +47,7 @@ func (m *PGMessageEventResponseStore) GetWithUserId(ctx context.Context, userId
var sentMessages []*message.MessageEventResponse
for rows.Next() {
var msg message.MessageEventResponse
if err := rows.Scan(&msg.Id, &msg.ScheduledMessageEventId, &msg.Response, &msg.UserId, &msg.Sent, &msg.ContactId, &msg.MessageId,); err != nil {
if err := rows.Scan(&msg.Id, &msg.ScheduledMessageEventId, &msg.Response, &msg.UserId, &msg.Sent, &msg.ContactId, &msg.MessageId, &msg.Status,); err != nil {
return nil, fmt.Errorf("Scanning row: %w", err)
}
sentMessages = append(sentMessages, &msg)
@@ -62,3 +62,21 @@ func (m *MockMessageEventResponseStore) Create(ctx context.Context, mer *message
}
// TODO: Add code to get mock MessageEventResponse
func (m *MockMessageEventResponseStore) GetWithUserId(ctx context.Context, userId uuid.UUID) ([]*message.MessageEventResponse, error) {
m.mu.Lock()
defer m.mu.Unlock()
if m.Error != nil {
return nil, m.Error
}
var messages []*message.MessageEventResponse
for _, msg := range m.MessageEventResponses {
if msg.UserId == userId {
messages = append(messages, msg)
}
}
return messages, nil
}