Release Preview 20 shared desktop, Android and Sargo updates
Restore Gaia settings and media workflows, extend native network adapters, and align the APK payload. Generate French/English changelogs and website entries from the simplified JSON source. Validation: shared JS and Tundra unit tests; desktop workflows and persistence; signed APK payload parity; Sargo RAM and installed startup with boot readback. Android runtime qualification is recorded separately.
This commit is contained in:
parent
be2cdce823
commit
1311bed5e9
170 changed files with 19698 additions and 2495 deletions
|
|
@ -49,3 +49,40 @@ for (const params of [{action:'focus',area:{left:-100,top:-100,right:100,bottom:
|
|||
for (const params of [{action:'zoom',zoom:NaN},{action:'focus',area:{left:2,right:1,top:0,bottom:1}},
|
||||
{action:'picture',size:{width:-1,height:100}},{action:'execute'}])
|
||||
assert.throws(()=>authorizePlatform(camera,'cameraPreview',params),/INVALID_VALUE/);
|
||||
|
||||
for (const action of ['sim','smsc','calls','messages','deliveryReports']) {
|
||||
const params={action,...(action==='deliveryReports'?{enabled:true}:{})};
|
||||
authorizePlatform(settings,'mobileSettings',params);
|
||||
for (const id of ['system','communications','sms','camera','marketplace'])
|
||||
rejects(app(id),'mobileSettings',params);
|
||||
}
|
||||
for (const params of [{action:'enterPin',pin:'1234'},{action:'deliveryReports',enabled:'true'}])
|
||||
assert.throws(()=>authorizePlatform(settings,'mobileSettings',params),/INVALID_VALUE/);
|
||||
console.log('PASS: mobile Settings queries are restricted to Settings; unsafe actions rejected.');
|
||||
|
||||
for(const action of ['network','dataEnabled','roaming']) {
|
||||
const params={action,...(action==='network'?{}:{enabled:false})};
|
||||
authorizePlatform(settings,'mobileSettings',params);
|
||||
rejects(app('system'),'mobileSettings',params);
|
||||
}
|
||||
for(const action of ['clock','setTimezone','setTime']) {
|
||||
authorizePlatform(settings,'deviceSettings',{action});
|
||||
for(const id of ['system','communications','marketplace'])rejects(app(id),'deviceSettings',{action});
|
||||
}
|
||||
assert.throws(()=>authorizePlatform(settings,'deviceSettings',{action:'execute'}),/INVALID_VALUE/);
|
||||
assert.throws(()=>authorizePlatform(settings,'mobileSettings',{action:'roaming',enabled:1}),/INVALID_VALUE/);
|
||||
|
||||
for(const action of ['radioMode','setRadioMode','apns','editApn']) {
|
||||
authorizePlatform(settings,'mobileSettings',{action});
|
||||
for(const id of ['system','communications','marketplace'])rejects(app(id),'mobileSettings',{action});
|
||||
}
|
||||
|
||||
for(const params of [{action:'calls'},{action:'forwarding'},{action:'setCallerId',mode:'default'},{action:'setCallWaiting',enabled:true},{action:'setForwarding',reason:'busy',enabled:false,number:''}]) {
|
||||
authorizePlatform(settings,'mobileSettings',params);
|
||||
for(const id of ['system','communications','marketplace'])rejects(app(id),'mobileSettings',params);
|
||||
}
|
||||
|
||||
for(const operation of ['hotspotStatus','hotspotSave','hotspotPower']) {
|
||||
authorizePlatform(settings,'wifi',{operation});
|
||||
for(const id of ['system','communications','marketplace'])rejects(app(id),'wifi',{operation});
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue