Skip to content

Commit e368d61

Browse files
authored
attach session details inside account (#106)
* create message along with event * removed unused references * build message fixes * build async api message object with session * append event log attributes to headers * updates for message options and session include * attach session details inside account * spec fixes --------- Signed-off-by: Raghu Ram <[email protected]>
1 parent e83d72e commit e368d61

File tree

4 files changed

+14
-13
lines changed

4 files changed

+14
-13
lines changed

lib/event_source/operations/build_message_options.rb

+7-4
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ class BuildMessageOptions
1313
def call(params)
1414
headers = yield build_headers(params)
1515
payload = yield build_payload(params)
16-
headers = yield append_session_details(headers)
16+
headers = yield append_account_details(headers)
1717

1818
Success(headers: headers, payload: payload)
1919
end
@@ -36,17 +36,20 @@ def build_payload(params)
3636
Success(payload)
3737
end
3838

39-
def append_session_details(headers)
39+
def append_account_details(headers)
4040
output = FetchSession.new.call
41+
account = {}
4142

4243
if output.success?
4344
session, current_user = output.value!
44-
headers[:session] = session&.symbolize_keys
45+
account[:session] = session&.symbolize_keys
4546
else
4647
# Create system account user <[email protected]> when session is not available
4748
current_user = system_account if defined?(system_account)
4849
end
49-
headers[:account_id] = current_user&.id&.to_s
50+
51+
account[:id] = current_user&.id&.to_s
52+
headers[:account] = account
5053

5154
Success(headers)
5255
end

spec/event_source/event_spec.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ def session
287287

288288
it "should build message" do
289289
expect(subject.message).to be_present
290-
expect(subject.message.headers[:session]).to include(
290+
expect(subject.message.headers[:account][:session]).to include(
291291
:session_id
292292
)
293293
end

spec/event_source/message_spec.rb

+3-4
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,7 @@ def session
5858
event_time
5959
event_outcome
6060
market_kind
61-
account_id
62-
session
61+
account
6362
]
6463
)
6564
end
@@ -74,8 +73,8 @@ def session
7473
it "should have payload with session on the message" do
7574
message = described_class.new(input_params)
7675

77-
expect(message.headers[:session]).to be_a(Hash)
78-
expect(message.headers[:session].keys).to match_array(
76+
expect(message.headers[:account][:session]).to be_a(Hash)
77+
expect(message.headers[:account][:session].keys).to match_array(
7978
%i[session_id portal login_session_id]
8079
)
8180
end

spec/event_source/operations/build_message_options_spec.rb

+3-4
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,7 @@ def session
5959
event_time
6060
event_outcome
6161
market_kind
62-
account_id
63-
session
62+
account
6463
]
6564
)
6665
end
@@ -77,8 +76,8 @@ def session
7776
result = subject.call(input_params)
7877
message_options = result.value!
7978

80-
expect(message_options[:headers][:session]).to be_a(Hash)
81-
expect(message_options[:headers][:session].keys).to match_array(
79+
expect(message_options[:headers][:account][:session]).to be_a(Hash)
80+
expect(message_options[:headers][:account][:session].keys).to match_array(
8281
%i[session_id portal login_session_id]
8382
)
8483
end

0 commit comments

Comments
 (0)