I have added a new test to check that certificateOptions.trustRoot is an instance of OpensSSLWindowsCertificateAuthorities if wincertstore is available
And I have modified the existing test test_setsTrustRootOnContextDefaultTrustRoot to be skipped if wincertstore is available.
I have run some simple tests using Agent against googlemaps to confirm the host verification works and fails and a similar test with treq. So looks good.
But before I send up the patch I need to be happy that trial twisted completes with out error. And I keep getting an error on one test but I can't work out what the problem is. Hopefully someone can fathom it from the traceback and point me in the right direction.
[ERROR]
Traceback (most recent call last):
Failure: twisted.trial.util.DirtyReactorAggregateError: Reactor was unclean.
DelayedCalls: (set twisted.internet.base.DelayedCall.debug = True to debug)
<DelayedCall 0x42e4f30 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
d.root-servers.net', <Deferred at 0x42e4a80>)>
<DelayedCall 0x42e4328 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
e.root-servers.net', <Deferred at 0x42e4b48>)>
<DelayedCall 0x42e4d28 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
f.root-servers.net', <Deferred at 0x42e4fa8>)>
<DelayedCall 0x42e4ad0 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
h.root-servers.net', <Deferred at 0x42e4a58>)>
<DelayedCall 0x4299aa8 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
l.root-servers.net', <Deferred at 0x42ce3a0>)>
<DelayedCall 0x42e4cb0 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
a.root-servers.net', <Deferred at 0x42e40d0>)>
<DelayedCall 0x42e4d50 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
b.root-servers.net', <Deferred at 0x42e4ee0>)>
<DelayedCall 0x42e45d0 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
c.root-servers.net', <Deferred at 0x42e4af8>)>
<DelayedCall 0x42e4670 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
g.root-servers.net', <Deferred at 0x42e4468>)>
<DelayedCall 0x42e4968 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
i.root-servers.net', <Deferred at 0x42e4e68>)>
<DelayedCall 0x42e4558 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
j.root-servers.net', <Deferred at 0x42e4fd0>)>
<DelayedCall 0x42cee68 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
k.root-servers.net', <Deferred at 0x42e4b70>)>
<DelayedCall 0x4355f08 [60.0s] called=0 cancelled=0 ThreadedResolver._cleanup('
m.root-servers.net', <Deferred at 0x4355e68>)>
twisted.names.test.test_tap.OptionsTests.test_recursiveConfiguration
-------------------------------------------------------------------------------
Ran 11184 tests in 84.952s
FAILED (skips=2946, errors=1, successes=8237)