public void DisplayItineraries_ReturnsTrue_WhenEventIsItineraryManaged()
        {
            var sut = new EventDetailViewModel();
            sut.EventType = Models.EventType.Itinerary;

            Assert.True(sut.IsItineraryEvent);
        }
        public void DisplayItineraries_ReturnsFalse_WhenEventIsNotItineraryManaged()
        {
            var sut = new EventDetailViewModel();
            sut.EventType = Models.EventType.Rally;

            Assert.False(sut.IsItineraryEvent);
        }
        public void AssignedPercentage_ReturnsCorrectPercentage()
        {
            var sut = new EventDetailViewModel
            {
                TotalRequests = 100,
                AssignedRequests = 20
            };

            var result = sut.AssignedPercentage;

            result.ShouldBe(20D.ToString("0.0"));
        }
        public void AssignedPercentage_ReturnsZero_WhenTotalRequestsIsZero()
        {
            var sut = new EventDetailViewModel
            {
                TotalRequests = 0,
                AssignedRequests = 0
            };

            var result = sut.AssignedPercentage;

            result.ShouldBe(0D.ToString("0.0"));
        }
        public void VolunteerFulfilmentPercentage_ReturnsCorrectPercentage()
        {
            var sut = new EventDetailViewModel
            {
                VolunteersRequired = 10,
                AcceptedVolunteers = 2
            };

            var result = sut.VolunteerFulfilmentPercentage;

            result.ShouldBe(20D.ToString("0.0"));
        }
        public void VolunteerFulfilmentPercentage_ReturnsZero_WhenVoluneersRequiredIsZero()
        {
            var sut = new EventDetailViewModel
            {
                VolunteersRequired = 0,
                AcceptedVolunteers = 0
            };

            var result = sut.VolunteerFulfilmentPercentage;

            result.ShouldBe(0D.ToString("0.0"));
        }