protected override void DeleteParameters(IDbCommand cmd, EstadaAlojamento entity) { SqlParameter p1 = new SqlParameter("@id_estada", entity.Estada?.Id); SqlParameter p2 = new SqlParameter("@nome_alojamento", entity.Alojamento?.Nome); cmd.Parameters.Add(p1); cmd.Parameters.Add(p2); }
protected override void UpdateParameters(IDbCommand cmd, EstadaAlojamento entity) { SqlParameter p1 = new SqlParameter("@preço_base", entity.PreçoBase); SqlParameter p2 = new SqlParameter("@descrição", entity.Descrição); SqlParameter p5 = new SqlParameter("@nome_alojamento", entity.Alojamento?.Nome); SqlParameter p6 = new SqlParameter("@id_estada", entity.Estada?.Id); cmd.Parameters.Add(p1); cmd.Parameters.Add(p2); cmd.Parameters.Add(p5); cmd.Parameters.Add(p6); }
protected override EstadaAlojamento Map(IDataRecord record) { EstadaAlojamento a = new EstadaAlojamento(); var nomeAlojamento = record.GetString(0); var idEstada = Convert.ToInt32(record.GetDecimal(1)); a.PreçoBase = record.GetDecimal(2); a.Descrição = record.GetString(3); AlojamentoMapper extraMapper = new AlojamentoMapper(context); a.Alojamento = extraMapper.Read(nomeAlojamento); EstadaMapper estadaMapper = new EstadaMapper(context); a.Estada = estadaMapper.Read(idEstada); return(a); }
public void EliminarParqueComAssociaçoesTest() { using (var ctx = new Entities()) { try { var estada = new Estada { data_início = new DateTime(2007, 3, 1), data_fim = new DateTime(2017, 3, 1), id = 25, nif_hóspede = 0 }; ctx.Estadas.Add(estada); /* * CREATE PARQUE */ Parque p = new Parque { nome = "brasil", email = "*****@*****.**", morada = "Rio de Janeiro, Rua Junqueiro 367", estrelas = 5 }; ctx.Parques.Add(p); /* * Alojamento */ Alojamento c = new Alojamento { preço_base = 50, nome = "OI", descrição = "sem descricao", localização = "Brasil", max_pessoas = 20, nome_parque = p.nome }; ctx.Alojamentoes.Add(c); EstadaAlojamento estadaAlojamento = new EstadaAlojamento() { descrição = "OLA", preço_base = 1234, id_estada = estada.id, nome_alojamento = c.nome }; ctx.EstadaAlojamentoes.Add(estadaAlojamento); ctx.SaveChanges(); ctx.Parques.Remove(p); ctx.SaveChanges(); var parqueExists = ctx.Parques.Any(parque => parque.nome.Equals(p.nome)); Assert.AreEqual(false, parqueExists); var alojamentoExists = ctx.Alojamentoes.Any(a => a.nome.Equals(c.nome)); Assert.AreEqual(false, alojamentoExists); var estadaExists = ctx.Estadas.Any(e => e.id == estada.id); Assert.AreEqual(false, estadaExists); } catch (Exception exception) { Console.WriteLine(exception); foreach (var e in ctx.EstadaAlojamentoes) { ctx.EstadaAlojamentoes.Remove(e); } foreach (var e in ctx.Estadas) { ctx.Estadas.Remove(e); } foreach (var alojamento in ctx.Alojamentoes) { ctx.Alojamentoes.Remove(alojamento); } foreach (var parque in ctx.Parques) { ctx.Parques.Remove(parque); } ctx.SaveChanges(); throw; } } }
protected override EstadaAlojamento UpdateEntityID(IDbCommand cmd, EstadaAlojamento e) { //No Need to to anything here return(e); }
protected override void InsertParameters(IDbCommand cmd, EstadaAlojamento entity) { UpdateParameters(cmd, entity); }
public void ApagarParqueEAssociaçoesTest() { using (var ctx = new Context(_connectionString)) { EstadaMapper estadaMapper = new EstadaMapper(ctx); ParqueMapper parqueMap = new ParqueMapper(ctx); AlojamentoMapper alojamentoMapper = new AlojamentoMapper(ctx); var estadaAlojamentoMapper = new EstadaAlojamentoMapper(ctx); try { var estada = new Estada { DataInicio = new DateTime(2007, 3, 1), DataFim = new DateTime(2017, 3, 1), Id = 25, NifHospede = 0 }; estada = estadaMapper.Create(estada); /* * CREATE PARQUE */ Parque p = new Parque(); p.Nome = "brasil"; p.Email = "*****@*****.**"; p.Morada = "Rio de Janeiro, Rua Junqueiro 367"; p.Estrelas = 5; p = parqueMap.Create(p); /* * Alojamento */ Alojamento c = new Alojamento { PreçoBase = 50, Nome = "OI", Descrição = "sem descricao", Localizaçao = "Brasil", MaxPessoas = 20, Parque = p }; c = alojamentoMapper.Create(c); EstadaAlojamento estadaAlojamento = new EstadaAlojamento() { Estada = estada, Alojamento = c, Descrição = "OLA", PreçoBase = 1234 }; estadaAlojamento = estadaAlojamentoMapper.Create(estadaAlojamento); var apagrParque = new ApagarParqueEAssociaçoes(ctx); apagrParque.Execute(p); var parqueExists = parqueMap.ReadAll().Any(parque => parque.Nome.Equals(p.Nome)); Assert.AreEqual(false, parqueExists); var alojamentoExists = alojamentoMapper.ReadAll().Any(a => a.Nome.Equals(c.Nome)); Assert.AreEqual(false, alojamentoExists); var estadaExists = estadaMapper.ReadAll().Any(e => e.Id == estada.Id); Assert.AreEqual(false, estadaExists); } catch (Exception exception) { Console.WriteLine(exception); foreach (var e in estadaAlojamentoMapper.ReadAll()) { estadaAlojamentoMapper.Delete(e); } foreach (var e in estadaMapper.ReadAll()) { estadaMapper.Delete(e); } foreach (var alojamento in alojamentoMapper.ReadAll()) { alojamentoMapper.Delete(alojamento); } foreach (var parque in parqueMap.ReadAll()) { parqueMap.Delete(parque); } throw; } } }
public void InsertTest() { using (Context ctx = new Context(_connectionString)) { var estada = new Estada { DataInicio = new DateTime(2007, 3, 1), DataFim = new DateTime(2017, 3, 1), Id = 25, NifHospede = 0 }; EstadaMapper estadaMapper = new EstadaMapper(ctx); estada = estadaMapper.Create(estada); /* * CREATE PARQUE */ Parque p = new Parque(); p.Nome = "brasil"; p.Email = "*****@*****.**"; p.Morada = "Rio de Janeiro, Rua Junqueiro 367"; p.Estrelas = 5; ParqueMapper parqueMap = new ParqueMapper(ctx); p = parqueMap.Create(p); /* * Alojamento */ Alojamento c = new Alojamento(); c.PreçoBase = 50; c.Nome = "OI"; c.Descrição = "sem descricao"; c.Localizaçao = "Brasil"; c.MaxPessoas = 20; c.Parque = p; AlojamentoMapper alojamentoMapper = new AlojamentoMapper(ctx); c = alojamentoMapper.Create(c); EstadaAlojamento estadaAlojamento = new EstadaAlojamento() { Estada = estada, Alojamento = c, Descrição = "OLA", PreçoBase = 1234 }; var estadaAlojamentoMapper = new EstadaAlojamentoMapper(ctx); estadaAlojamento = estadaAlojamentoMapper.Create(estadaAlojamento); var ee = estadaAlojamentoMapper.Read(new KeyValuePair <string, int>(estadaAlojamento.Alojamento.Nome, estadaAlojamento.Estada.Id)); Assert.IsNotNull(ee); Assert.AreEqual(ee.Alojamento.Nome, estadaAlojamento.Alojamento.Nome); Assert.AreEqual(ee.Estada.Id, estadaAlojamento.Estada.Id); foreach (var e in estadaAlojamentoMapper.ReadAll()) { estadaAlojamentoMapper.Delete(e); } foreach (var e in estadaMapper.ReadAll()) { estadaMapper.Delete(estada); } foreach (var alojamento in alojamentoMapper.ReadAll()) { alojamentoMapper.Delete(alojamento); } foreach (var parque in parqueMap.ReadAll()) { parqueMap.Delete(parque); } } }