public void DeveObterListaDeDias() { _sut = new DiasDeEnvio("11/07/2017", "14/07/2017"); var listaDeDiasDeEnvio = _sut.GetListaDeEnvio(); var diasEsperados = new List <string> { "11/07/2017", "12/07/2017", "13/07/2017", "14/07/2017" }; listaDeDiasDeEnvio.Should().Equal(diasEsperados); }
internal ServicerResult <IReadOnlyCollection <ItemDeEnvio> > GerarDatasEnvio(string dataInicio, string datafim) { try { var diasDeEnvio = new DiasDeEnvio(dataInicio, datafim); var diasComHorasDeEnvio = new DiasComHorasDeEnvio(diasDeEnvio); MemoryPersistence.DiasComHorasDeEnvio = diasComHorasDeEnvio; var result = new ServicerResult <IReadOnlyCollection <ItemDeEnvio> >(diasComHorasDeEnvio.ItensDeEnvio); return(result); } catch (ArgumentException e) { return(new ServicerResult <IReadOnlyCollection <ItemDeEnvio> >(e.Message)); } }
public void NãoDeveIncluirFinalDeSemana() { _sut = new DiasDeEnvio("03/07/2017", "17/07/2017"); var listaDeDiasDeEnvio = _sut.GetListaDeEnvio(); var diasEsperados = new List <string> { "03/07/2017", "04/07/2017", "05/07/2017", "06/07/2017", "07/07/2017", "10/07/2017", "11/07/2017", "12/07/2017", "13/07/2017", "14/07/2017", "17/07/2017" }; listaDeDiasDeEnvio.Should().Equal(diasEsperados); }
public void DeveObterListaComHorariosDeEnvio() { var diasDeEnvio = new DiasDeEnvio("11/07/2017", "14/07/2017"); _sut = new DiasComHorasDeEnvio(diasDeEnvio); var diasComHorasDeEnvio = _sut.ItensDeEnvio.ToList(); for (var i = 0; i < diasComHorasDeEnvio.Count; i++) { var itemDeEnvio = diasComHorasDeEnvio[i]; var datahoraEntrada = DateTime.Parse(itemDeEnvio.Entrada); var datahoraSaida = DateTime.Parse(itemDeEnvio.Saida); datahoraEntrada.Day.Should().Be(datahoraSaida.Day); datahoraEntrada.Month.Should().Be(datahoraSaida.Month); datahoraEntrada.Year.Should().Be(datahoraSaida.Year); AssertDataHoraEnvioEntrada(datahoraEntrada); AssertDataHoraEnvioSaida(datahoraSaida); } }
public void DeveValidarSeÉData(string dataInicial, string dataFinal) { var action = new Action(() => { _sut = new DiasDeEnvio(dataInicial, dataFinal); }); action.ShouldThrow <ArgumentException>().WithMessage("Datas com formato errado. Formato correto: dd/mm/aaaa ou dd-mm-aaaa!"); }
public void NãoDeveCriarComDatasDeInicioEFimForaDeOrdem(string dataInicial, string dataFinal) { var action = new Action(() => { _sut = new DiasDeEnvio(dataInicial, dataFinal); }); action.ShouldThrow <ArgumentException>().WithMessage("Datas fora de ordem!"); }