@webex/plugin-meetings 3.6.0-next.13 → 3.6.0-next.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -75,7 +75,7 @@ var Webinar = _webexCore.WebexPlugin.extend({
75
75
  isDemoted: isDemoted
76
76
  };
77
77
  },
78
- version: "3.6.0-next.13"
78
+ version: "3.6.0-next.14"
79
79
  });
80
80
  var _default = exports.default = Webinar;
81
81
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -43,7 +43,7 @@
43
43
  "@webex/eslint-config-legacy": "0.0.0",
44
44
  "@webex/jest-config-legacy": "0.0.0",
45
45
  "@webex/legacy-tools": "0.0.0",
46
- "@webex/plugin-meetings": "3.6.0-next.13",
46
+ "@webex/plugin-meetings": "3.6.0-next.14",
47
47
  "@webex/plugin-rooms": "3.6.0-next.6",
48
48
  "@webex/test-helper-chai": "3.6.0-next.2",
49
49
  "@webex/test-helper-mocha": "3.6.0-next.2",
@@ -70,7 +70,7 @@
70
70
  "@webex/internal-plugin-metrics": "3.6.0-next.2",
71
71
  "@webex/internal-plugin-support": "3.6.0-next.6",
72
72
  "@webex/internal-plugin-user": "3.6.0-next.2",
73
- "@webex/internal-plugin-voicea": "3.6.0-next.13",
73
+ "@webex/internal-plugin-voicea": "3.6.0-next.14",
74
74
  "@webex/media-helpers": "3.6.0-next.2",
75
75
  "@webex/plugin-people": "3.6.0-next.4",
76
76
  "@webex/plugin-rooms": "3.6.0-next.6",
@@ -91,5 +91,5 @@
91
91
  "//": [
92
92
  "TODO: upgrade jwt-decode when moving to node 18"
93
93
  ],
94
- "version": "3.6.0-next.13"
94
+ "version": "3.6.0-next.14"
95
95
  }
@@ -7123,7 +7123,7 @@ export default class Meeting extends StatelessWebexPlugin {
7123
7123
  shareAudioEnabled = true,
7124
7124
  shareVideoEnabled = true,
7125
7125
  remoteMediaManagerConfig,
7126
- bundlePolicy,
7126
+ bundlePolicy = 'max-bundle',
7127
7127
  } = options;
7128
7128
 
7129
7129
  this.allowMediaInLobby = options?.allowMediaInLobby;
@@ -3442,47 +3442,60 @@ describe('plugin-meetings', () => {
3442
3442
  });
3443
3443
  });
3444
3444
 
3445
- it('should pass bundlePolicy to createMediaConnection', async () => {
3445
+ describe('bundlePolicy', () => {
3446
3446
  const FAKE_TURN_URL = 'turns:webex.com:3478';
3447
3447
  const FAKE_TURN_USER = 'some-turn-username';
3448
3448
  const FAKE_TURN_PASSWORD = 'some-password';
3449
3449
 
3450
- meeting.meetingState = 'ACTIVE';
3451
- Media.createMediaConnection.resetHistory();
3452
-
3453
- meeting.roap.doTurnDiscovery = sinon.stub().resolves({
3454
- turnServerInfo: {
3455
- url: FAKE_TURN_URL,
3456
- username: FAKE_TURN_USER,
3457
- password: FAKE_TURN_PASSWORD,
3458
- },
3459
- turnDiscoverySkippedReason: undefined,
3460
- });
3461
- const media = meeting.addMedia({
3462
- mediaSettings: {},
3463
- bundlePolicy: 'bundlePolicy-value',
3464
- });
3450
+ beforeEach(() => {
3451
+ meeting.meetingState = 'ACTIVE';
3452
+ Media.createMediaConnection.resetHistory();
3465
3453
 
3466
- assert.exists(media);
3467
- await media;
3468
- assert.calledOnce(meeting.roap.doTurnDiscovery);
3469
- assert.calledWith(meeting.roap.doTurnDiscovery, meeting, false);
3470
- assert.calledOnce(Media.createMediaConnection);
3471
- assert.calledWith(
3472
- Media.createMediaConnection,
3473
- false,
3474
- meeting.getMediaConnectionDebugId(),
3475
- meeting.id,
3476
- sinon.match({
3454
+ meeting.roap.doTurnDiscovery = sinon.stub().resolves({
3477
3455
  turnServerInfo: {
3478
3456
  url: FAKE_TURN_URL,
3479
3457
  username: FAKE_TURN_USER,
3480
3458
  password: FAKE_TURN_PASSWORD,
3481
3459
  },
3482
- bundlePolicy: 'bundlePolicy-value',
3483
- })
3484
- );
3485
- assert.calledOnce(fakeMediaConnection.initiateOffer);
3460
+ turnDiscoverySkippedReason: undefined,
3461
+ });
3462
+ });
3463
+
3464
+ const runCheck = async (bundlePolicy, expectedValue) => {
3465
+ const media = meeting.addMedia({
3466
+ mediaSettings: {},
3467
+ bundlePolicy,
3468
+ });
3469
+
3470
+ assert.exists(media);
3471
+ await media;
3472
+ assert.calledOnce(meeting.roap.doTurnDiscovery);
3473
+ assert.calledWith(meeting.roap.doTurnDiscovery, meeting, false);
3474
+ assert.calledOnce(Media.createMediaConnection);
3475
+ assert.calledWith(
3476
+ Media.createMediaConnection,
3477
+ false,
3478
+ meeting.getMediaConnectionDebugId(),
3479
+ meeting.id,
3480
+ sinon.match({
3481
+ turnServerInfo: {
3482
+ url: FAKE_TURN_URL,
3483
+ username: FAKE_TURN_USER,
3484
+ password: FAKE_TURN_PASSWORD,
3485
+ },
3486
+ bundlePolicy: expectedValue,
3487
+ })
3488
+ );
3489
+ assert.calledOnce(fakeMediaConnection.initiateOffer);
3490
+ };
3491
+
3492
+ it('should pass bundlePolicy to createMediaConnection', async () => {
3493
+ await runCheck('max-compat', 'max-compat');
3494
+ });
3495
+
3496
+ it('should pass max-bundle to createMediaConnection if bundlePolicy is not provided', async () => {
3497
+ await runCheck(undefined, 'max-bundle');
3498
+ });
3486
3499
  });
3487
3500
 
3488
3501
  it('succeeds even if getDevices() throws', async () => {