private int BuscaQuantidadeSalaReservada(ReservaModel reservaModel) { var salaModel = new SalaModel { Id = reservaModel.HorarioModel.IdSala }; salaModel = salaService.Buscar(salaModel); return salaModel.QuantidadeLugares; }
public void Testa_Se_For_Feita_Uma_Reserva_De_Sala_Que_Ja_Esta_Lotada_Exibe_Mensagem_De_Validacao() { // Dado que a reserva seja feita. var reservaModel = new ReservaModel { QuantidadeIngressos = 1, IdHorario = 1, IdUsuario = 7, HorarioModel = new HorarioModel { IdSala = 1 } }; var salaModel = new SalaModel { Id = 1, QuantidadeLugares = 5, Nome = "Sala 01", Descricao = "Sala para exibições 3D." }; var horarioModel = new HorarioModel { Id = 1, IdSala = 1, IdFilme = 3 }; var reservas = new List<ReservaModel> { new ReservaModel { Id = 1, IdHorario = 1, IdUsuario = 1, HorarioModel = horarioModel }, new ReservaModel { Id = 2, IdHorario = 1, IdUsuario = 2, HorarioModel = horarioModel }, new ReservaModel { Id = 3, IdHorario = 1, IdUsuario = 3, HorarioModel = horarioModel }, new ReservaModel { Id = 4, IdHorario = 1, IdUsuario = 4, HorarioModel = horarioModel }, new ReservaModel { Id = 5, IdHorario = 1, IdUsuario = 5, HorarioModel = horarioModel } }; var mock = new Mock<IReservaRepository>(); mock.Setup(u => u.Incluir(reservaModel)).Verifiable(); mock.Setup(u => u.ListarComObjetosFilhos(It.IsAny<ReservaModel>())).Returns(reservas); var salaMock = new Mock<ISalaRepository>(); salaMock.Setup(u => u.Buscar(It.IsAny<SalaModel>())).Returns(salaModel); try { // Quando a reserva for feita. var reservaService = new ReservaService(mock.Object, salaMock.Object); reservaService.Incluir(reservaModel); Assert.Fail("A reserva não poderia ser feita, pois a sala já está lotada."); } catch (ReservaIngressosCinemaException ex) { // Então deve exibir mensagem que a sala está lotada. var mensagemEsperada = ReservaResource.SalaLotadaMensagem; Assert.AreEqual(mensagemEsperada, ex.Mensagem); } }
public SalaModel Buscar(SalaModel salaModel) { return salaRepository.Buscar(salaModel); }
public SalaModel Buscar(SalaModel salaModel) { // Busca no banco. return new SalaModel(); }