refactor: create request context from network context (#14656)
* [ci skip] refactor: create request context from network context * [ci skip] refactor: subscribe to mojo cookiemanager for cookie changes * [ci skip] refactor: manage the lifetime of custom URLRequestJobFactory * refactor: use OOP mojo proxy resolver * revert: add support for kIgnoreCertificateErrorsSPKIList * build: provide service manifest overlays for content services * chore: gn format * fix: log-net-log switch not working as expected * spec: verify proxy settings are respected from pac script with session.setProxy * chore: use chrome constants where possible * fix: initialize request context for global cert fetcher * refactor: fix destruction of request context getters * spec: use custom session for proxy tests * fix: queue up additional stop callbacks while net log is being stopped * fix: Add CHECK for cookie manager retrieval * chore: add helper to retrieve logging state for net log module * fix: ui::ResourceBundle::GetRawDataResourceForScale => GetRawDataResource * style: comment unused parameters * build: move //components/certificate_transparency deps from //brightray * chore: update gritsettings_resource_ids patch * chore: update api for chromium 68 * fix: net log instance is now a property of session
This commit is contained in:
parent
27bbf6a3c6
commit
434a6e3561
73 changed files with 2031 additions and 1844 deletions
|
@ -476,23 +476,62 @@ describe('session module', () => {
|
|||
})
|
||||
|
||||
describe('ses.setProxy(options, callback)', () => {
|
||||
let server = null
|
||||
let customSession = null
|
||||
|
||||
beforeEach(() => {
|
||||
customSession = session.fromPartition('proxyconfig')
|
||||
})
|
||||
|
||||
afterEach(() => {
|
||||
if (server) {
|
||||
server.close()
|
||||
}
|
||||
if (customSession) {
|
||||
customSession.destroy()
|
||||
}
|
||||
})
|
||||
|
||||
it('allows configuring proxy settings', (done) => {
|
||||
const config = { proxyRules: 'http=myproxy:80' }
|
||||
session.defaultSession.setProxy(config, () => {
|
||||
session.defaultSession.resolveProxy('http://localhost', (proxy) => {
|
||||
customSession.setProxy(config, () => {
|
||||
customSession.resolveProxy('http://localhost', (proxy) => {
|
||||
assert.strictEqual(proxy, 'PROXY myproxy:80')
|
||||
done()
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
it('allows configuring proxy settings with pacScript', (done) => {
|
||||
server = http.createServer((req, res) => {
|
||||
const pac = `
|
||||
function FindProxyForURL(url, host) {
|
||||
return "PROXY myproxy:8132";
|
||||
}
|
||||
`
|
||||
res.writeHead(200, {
|
||||
'Content-Type': 'application/x-ns-proxy-autoconfig'
|
||||
})
|
||||
res.end(pac)
|
||||
})
|
||||
server.listen(0, '127.0.0.1', () => {
|
||||
const config = { pacScript: `http://127.0.0.1:${server.address().port}` }
|
||||
customSession.setProxy(config, () => {
|
||||
customSession.resolveProxy('http://localhost', (proxy) => {
|
||||
assert.strictEqual(proxy, 'PROXY myproxy:8132')
|
||||
done()
|
||||
})
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
it('allows bypassing proxy settings', (done) => {
|
||||
const config = {
|
||||
proxyRules: 'http=myproxy:80',
|
||||
proxyBypassRules: '<local>'
|
||||
}
|
||||
session.defaultSession.setProxy(config, () => {
|
||||
session.defaultSession.resolveProxy('http://localhost', (proxy) => {
|
||||
customSession.setProxy(config, () => {
|
||||
customSession.resolveProxy('http://localhost', (proxy) => {
|
||||
assert.strictEqual(proxy, 'DIRECT')
|
||||
done()
|
||||
})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue