コード例 #1
0
        public void TestInstall_ErrorCallingWebService()
        {
            //setup
            _mockServer.Setup(s => s.GetLicense(_licenseKey))
                .Throws<Exception>();

            //act
            var request = new InstallLicenseRequest();
            request.Key = _licenseKey;
            HandleRequest<InstallLicenseResponse>(_handler, request);

            //assert
            _mockServer.Verify(s => s.GetLicense(_licenseKey), Times.Once());
            _mockNotifier.Verify(n => n.SendBatch(It.IsAny<IEnumerable<MailMessage>>()), Times.Never());
        }
コード例 #2
0
        public void TestInstall_HappyPath()
        {
            //setup
            var goodLicense = TestLicense.Load("LicenseGood.xml");
            _mockServer.Setup(s => s.GetLicense(_licenseKey))
                .Returns(goodLicense);
            _mockVerifier.Setup(v => v.HasValidSignature(goodLicense))
                .Returns(true);
            _mockClock.Setup(c => c.Now)
                .Returns(new DateTime(2011, 9, 13));

            //act
            var request = new InstallLicenseRequest();
            request.Key = _licenseKey;
            HandleRequest<InstallLicenseResponse>(_handler, request);

            //assert
            _mockServer.Verify(s => s.GetLicense(_licenseKey), Times.Once());
            _mockVerifier.Verify(v => v.HasValidSignature(goodLicense), Times.Once());
            _mockStore.Verify(s => s.Save(goodLicense), Times.Once());
            _mockNotifier.Verify(n => n.SendBatch(It.IsAny<IEnumerable<MailMessage>>()), Times.Never());
        }
コード例 #3
0
        public void TestInstall_InvalidSignatureFromWebService()
        {
            //setup
            var badLicense = TestLicense.Load("LicenseTampered.xml");
            _mockServer.Setup(s => s.GetLicense(_licenseKey))
                .Returns(badLicense);
            _mockVerifier.Setup(v => v.HasValidSignature(badLicense))
                .Returns(false);

            //act
            var request = new InstallLicenseRequest();
            request.Key = _licenseKey;
            HandleRequest<InstallLicenseResponse>(_handler, request);

            //assert
            _mockServer.Verify(s => s.GetLicense(_licenseKey), Times.Once());
            _mockVerifier.Verify(v => v.HasValidSignature(badLicense), Times.Once());
            _mockStore.Verify(s => s.Save(It.IsAny<IXPathNavigable>()), Times.Never());
            _mockNotifier.Verify(n => n.SendBatch(It.IsAny<IEnumerable<MailMessage>>()), Times.Never());
        }
コード例 #4
0
        public void TestInstall_LicenseInGracePeriod()
        {
            //setup
            var goodLicense = TestLicense.Load("LicenseGood.xml");
            _mockServer.Setup(s => s.GetLicense(_licenseKey))
                .Returns(goodLicense);
            _mockVerifier.Setup(v => v.HasValidSignature(goodLicense))
                .Returns(true);
            _mockClock.Setup(c => c.Now)
                .Returns(new DateTime(2011, 9, 15));
            _mockConfig.Setup(c => c.SenderEmail).Returns("*****@*****.**");
            _mockConfig.Setup(c => c.OwnerEmail).Returns("*****@*****.**");
            _mockConfig.Setup(c => c.ClientEmail).Returns("*****@*****.**");
            _mockConfig.Setup(c => c.GracePeriodEmailClientTemplate).Returns("test template");
            _mockConfig.Setup(c => c.GracePeriodEmailOwnerTemplate).Returns("test template");

            //act
            var request = new InstallLicenseRequest();
            request.Key = _licenseKey;
            HandleRequest<InstallLicenseResponse>(_handler, request);

            //assert
            _mockServer.Verify(s => s.GetLicense(_licenseKey), Times.Once());
            _mockVerifier.Verify(v => v.HasValidSignature(goodLicense), Times.Once());
            _mockStore.Verify(s => s.Save(goodLicense), Times.Once());
            _mockNotifier.Verify(n => n.SendBatch(It.IsAny<IEnumerable<MailMessage>>()), Times.Once());
        }