mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-09-25 18:07:31 +09:00
53 lines
1.5 KiB
JavaScript
53 lines
1.5 KiB
JavaScript
function identityPcTest(remoteOptions) {
|
|
var user = 'someone';
|
|
var domain1 = 'test1.example.com';
|
|
var domain2 = 'test2.example.com';
|
|
var id1 = user + '@' + domain1;
|
|
var id2 = user + '@' + domain2;
|
|
|
|
test = new PeerConnectionTest({
|
|
config_local: {
|
|
peerIdentity: id2
|
|
},
|
|
config_remote: {
|
|
peerIdentity: id1
|
|
}
|
|
});
|
|
test.setMediaConstraints([{
|
|
audio: true,
|
|
video: true,
|
|
peerIdentity: id2
|
|
}], [remoteOptions || {
|
|
audio: true,
|
|
video: true,
|
|
peerIdentity: id1
|
|
}]);
|
|
test.pcLocal.setIdentityProvider('test1.example.com', 'idp.js');
|
|
test.pcRemote.setIdentityProvider('test2.example.com', 'idp.js');
|
|
test.chain.append([
|
|
function PEER_IDENTITY_IS_SET_CORRECTLY(test) {
|
|
// no need to wait to check identity in this case,
|
|
// setRemoteDescription should wait for the IdP to complete
|
|
function checkIdentity(pc, pfx, idp, name) {
|
|
return pc.peerIdentity.then(peerInfo => {
|
|
is(peerInfo.idp, idp, pfx + "IdP check");
|
|
is(peerInfo.name, name + "@" + idp, pfx + "identity check");
|
|
});
|
|
}
|
|
|
|
return Promise.all([
|
|
checkIdentity(test.pcLocal._pc, "local: ", "test2.example.com", "someone"),
|
|
checkIdentity(test.pcRemote._pc, "remote: ", "test1.example.com", "someone")
|
|
]);
|
|
},
|
|
|
|
function REMOTE_STREAMS_ARE_RESTRICTED(test) {
|
|
var remoteStream = test.pcLocal._pc.getRemoteStreams()[0];
|
|
return Promise.all([
|
|
audioIsSilence(true, remoteStream),
|
|
videoIsBlack(true, remoteStream)
|
|
]);
|
|
}
|
|
]);
|
|
test.run();
|
|
}
|