public void InspectContextForUniqueNoncePasses() { var nonceStore = MockRepository.GenerateStub<INonceStore>(); var context = new OAuthContext {Nonce = "2"}; nonceStore.Stub(stub=>stub.RecordNonceAndCheckIsUnique(context, "2")).Return(true); var inspector = new NonceStoreInspector(nonceStore); Assert.DoesNotThrow(() => inspector.InspectContext(ProviderPhase.GrantRequestToken, context)); }
public void InspectContextForRepeatedNonceThrows() { var nonceStore = MockRepository.GenerateStub<INonceStore>(); var context = new OAuthContext {Nonce = "1"}; nonceStore.Stub(stub => stub.RecordNonceAndCheckIsUnique(context, "1")).Return(false); var inspector = new NonceStoreInspector(nonceStore); var ex = Assert.Throws<OAuthException>(() => inspector.InspectContext(ProviderPhase.GrantRequestToken, context)); Assert.Equal("The nonce value \"1\" has already been used", ex.Message); }
public void InspectContextForUniqueNoncePasses() { var repository = new MockRepository(); var nonceStore = repository.StrictMock<INonceStore>(); var context = new OAuthContext {Nonce = "2"}; using (repository.Record()) { Expect.Call(nonceStore.RecordNonceAndCheckIsUnique(context, "2")).Return(true); } using (repository.Playback()) { var inspector = new NonceStoreInspector(nonceStore); inspector.InspectContext(ProviderPhase.GrantRequestToken, context); } }