예제 #1
0
        public void UnaJornadaNoTerminadaNoPuedeTerminarPausaSiNoHayUnaPausaIniciada()
        {
            var fixture = new Fixture();
            var inicioJornada = fixture.CreateAnonymous<DateTime>();
            var finPausa = fixture.CreateAnonymous<DateTime>();

            var sut = new Jornada(inicioJornada);
            sut.PausaIniciada.Should().BeNull();

            Assert.Throws<InvalidOperationException>(
                () => sut.TerminarPausa(finPausa));
        }
예제 #2
0
        public void UnaJornadaTerminadaNoPuedeTerminarUnaPausa()
        {
            var fixture = new Fixture();
            var inicioJornada = fixture.CreateAnonymous<DateTime>();
            var finPausa = fixture.CreateAnonymous<DateTime>();
            var finJornada = fixture.CreateAnonymous<DateTime>();

            var sut = new Jornada(inicioJornada, finJornada);

            Assert.Throws<InvalidOperationException>(() => sut.TerminarPausa(finPausa));
        }
예제 #3
0
        public void UnaJornadaNoTerminadaConPausaIniciadaPuedeTerminarUnaPausa()
        {
            var fixture = new Fixture();
            var inicioJornada = fixture.CreateAnonymous<DateTime>();
            var inicioPausa = fixture.CreateAnonymous<DateTime>();
            var finPausa = fixture.CreateAnonymous<DateTime>();
            var pausa = new Pausa(inicioPausa);

            var sut = new Jornada(inicioJornada, pausa);
            sut.PausaIniciada.Should().NotBeNull();

            sut.TerminarPausa(finPausa);

            sut.PausaIniciada.Should().BeNull();
        }