public void Constructor_FiveInterfaceInputs_AssignsSuccessMessageToViewMessage()
        {
            const string monthlyMembership = "Monthly Membership";
            const decimal amount = 35.00M;
            var gymMembershipConfiguration = new GymMembershipConfiguration(monthlyMembership, amount);

            Expect.Call(_gymMembershipConfigurationRepository.ConfigureMembership(monthlyMembership, amount)).Return(gymMembershipConfiguration);

            var pdfInvoice = new PdfInvoice { Name = monthlyMembership, Amount = amount };
            Expect.Call(_invoicePdfGeneratorRepository.CreatePdfInvoice(gymMembershipConfiguration)).Return(pdfInvoice);

            _nationalGymRegistrationRepository.RegisterMembership(gymMembershipConfiguration);

            _gymMembershipRepository.Save(gymMembershipConfiguration);

            _gymMembershipView.Message = "A gym membership has been created.";

            _mockRepository.ReplayAll();

            var sut = new GymMembershipPresenter(_gymMembershipConfigurationRepository,
                                                 _invoicePdfGeneratorRepository,
                                                 _nationalGymRegistrationRepository,
                                                 _gymMembershipRepository,
                                                 _gymMembershipView);
            sut.ConfigureGymMembership(monthlyMembership, amount);
        }
 public void TwoInstances_SameNameAndAmount_AreEqual()
 {
     const string monthlyMembership = "test";
     const decimal amount = 35.00M;
     var sut1 = new GymMembershipConfiguration(monthlyMembership, amount);
     var sut2 = new GymMembershipConfiguration(monthlyMembership, amount);
     Assert.AreEqual(sut1, sut2);
 }