From 43d83180130e75a183b62be8c01e4138e78b651b Mon Sep 17 00:00:00 2001 From: Jeremy LaCivita Date: Tue, 9 May 2023 12:16:07 -0400 Subject: [PATCH] fix(Events): Support for multiple context parameters https://github.com/rdkcentral/firebolt-openrpc/issues/91 --- .../javascript/src/shared/Events/index.mjs | 2 +- .../javascript/src/shared/Prop/index.mjs | 2 +- test/openrpc/advanced.json | 63 ++++++++++++++++++- test/suite/properties-context.test.js | 15 ++++- 4 files changed, 78 insertions(+), 4 deletions(-) diff --git a/languages/javascript/src/shared/Events/index.mjs b/languages/javascript/src/shared/Events/index.mjs index 87e4cfdd..18c2092a 100644 --- a/languages/javascript/src/shared/Events/index.mjs +++ b/languages/javascript/src/shared/Events/index.mjs @@ -201,7 +201,7 @@ const getClearArgs = function(...args) { const event = args.shift() || '*' const context = {} - for (let i = 0; i { transport.onSend(json => { + console.dir(json) if (json.method === 'advanced.propertyWithContext') { if (json.params.appId === 'some-app') { contextSentToGetter = true @@ -68,6 +70,11 @@ beforeAll( () => { contextSentToEvent = true } } + else if (json.method === "advanced.onEventWithTwoContext") { + if (json.params.appId === 'some-app' && json.params.state === 'inactive') { + bothContextSentToEvent = true + } + } }) Advanced.propertyWithContext('some-app', true) @@ -97,8 +104,14 @@ test('Context Property set', () => { expect(contextSentToSetter).toBe(true) }); -test('Event with context', () => { +test('Event with single context param', () => { Advanced.listen("eventWithContext", "some-app", (data) => { expect(contextSentToEvent).toBe(true) }) +}) + +test('Event with two context params', () => { + Advanced.listen("eventWithTwoContext", "some-app", "inactive", (data) => { + expect(bothContextSentToEvent).toBe(true) + }) }) \ No newline at end of file