public void When_updating_published_updates_conference()
        {
            _service.Publish(this._conference.Id);
            Assert.IsTrue(_service.FindConference(this._conference.Slug).IsPublished);

            _service.Unpublish(this._conference.Id);
            Assert.IsFalse(_service.FindConference(this._conference.Slug).IsPublished);
        }
예제 #2
0
        public async Task <IActionResult> Get(string slug, [FromHeader] string accessCode)
        {
            var conference = await _service.FindConference(slug);

            if (conference == null)
            {
                return(NotFound());
            }

            // check access
            if (accessCode == null || !string.Equals(accessCode, conference.AccessCode, StringComparison.Ordinal))
            {
                return(Unauthorized("Invalid access code."));
            }

            return(Ok(_mapper.Map <ConferenceReadModel>(conference)));
        }
 public static ConferenceInfo FindConference(string conferenceSlug)
 {
     var svc = new ConferenceService(BuildEventBus());
     var conference = svc.FindConference(conferenceSlug);
     if (null != conference)
     {
         if (conference.Seats.Count == 0)
             svc.FindSeatTypes(conference.Id).ToList().ForEach(s => conference.Seats.Add(s));
     }
     return conference;
 }
예제 #4
0
        public void when_finding_by_non_existing_slug_then_returns_null()
        {
            var conference = service.FindConference(Guid.NewGuid().ToString());

            Assert.Null(conference);
        }
예제 #5
0
        public void when_finding_by_slug_then_returns_conference()
        {
            var conference = service.FindConference(this.conference.Slug);

            Assert.NotNull(conference);
        }