public void Add_WhenCalled_ThenAllTotalsAreCalculated()
        {
            // arrange
            var          sut          = new CertificateCollection();
            ICertificate certificate1 = MockCertificate(numberOfCertificatesHeld: 2, numberOfCommittedCertificates: 5, remainingBalance: 3);
            ICertificate certificate2 = MockCertificate(numberOfCertificatesHeld: 1, numberOfCommittedCertificates: 5, remainingBalance: 1);

            // act
            sut.Add(certificate1);
            sut.Add(certificate2);

            // assert
            sut.TotalNumberOfCertificates.Should().Be(3);
            certificate1.TotalNumberOfCertificates.Should().Be(3);
            certificate2.TotalNumberOfCertificates.Should().Be(3);

            sut.TotalNumberOfCommittedCertificates.Should().Be(10);
            certificate1.TotalNumberOfCommittedCertificates.Should().Be(10);
            certificate2.TotalNumberOfCommittedCertificates.Should().Be(10);

            sut.TotalRemainingBalance.Should().Be(4);
        }
Beispiel #2
0
        private CertificateCollection FindAllRecipientCertificatesFor(MailMessage message)
        {
            var results = new CertificateCollection();

            var certStore = new CertificateStore(CertificateStore.OtherPeople, CertStoreType.System, null);

            foreach (var recipient in message.To.Concat(message.CC).Concat(message.BCC))
            {
                foreach (Certificate cert in certStore.FindCertificates(recipient.Address, CertificateFields.EmailAddress))
                {
                    results.Add(cert);
                }
            }

            return(results);
        }