public void AsymmetricSignatureProvider_Dispose() { AsymmetricSignatureProvider provider = new AsymmetricSignatureProvider(KeyingMaterial.AsymmetricKey_Public_2048, SecurityAlgorithms.RsaSha256Signature); provider.Dispose(); try { provider.Sign(new byte[256]); } catch (Exception ex) { ExpectedException.ProcessException(ExpectedException.ObjDisp, ex); } try { provider.Verify(new byte[256], new byte[256]); } catch (Exception ex) { ExpectedException.ProcessException(ExpectedException.ObjDisp, ex); } try { provider.Dispose(); } catch (Exception ex) { Assert.Fail(string.Format("AsymmetricSignatureProvider.Dispose called twice, caught exception: '{0}'", ex)); } }
public void SignatureProvider_Dispose() { AsymmetricSignatureProvider asymmetricSignatureProvider = new AsymmetricSignatureProvider(KeyingMaterial.DefaultX509Key_Public_2048, SecurityAlgorithms.RsaSha256Signature); asymmetricSignatureProvider.Dispose(); ExpectedException expectedException = ExpectedException.ObjectDisposedException; SignatureProvider_DisposeVariation("Sign", asymmetricSignatureProvider, expectedException); SignatureProvider_DisposeVariation("Verify", asymmetricSignatureProvider, expectedException); SignatureProvider_DisposeVariation("Dispose", asymmetricSignatureProvider, ExpectedException.NoExceptionExpected); SymmetricSignatureProvider symmetricProvider = new SymmetricSignatureProvider(KeyingMaterial.DefaultSymmetricSecurityKey_256, KeyingMaterial.DefaultSymmetricSigningCreds_256_Sha2.Algorithm); symmetricProvider.Dispose(); SignatureProvider_DisposeVariation("Sign", symmetricProvider, expectedException); SignatureProvider_DisposeVariation("Verify", symmetricProvider, expectedException); SignatureProvider_DisposeVariation("Dispose", symmetricProvider, ExpectedException.NoExceptionExpected); }