@@ -0,0 +1,1594 @@
+package com.cronutils;%0A%0Aimport com.cronutils.model.CronType;%0Aimport com.cronutils.model.definition.CronDefinition;%0Aimport com.cronutils.model.definition.CronDefinitionBuilder;%0Aimport com.cronutils.model.time.ExecutionTime;%0Aimport com.cronutils.parser.CronParser;%0Aimport org.junit.Test;%0A%0Aimport java.time.LocalDate;%0Aimport java.time.LocalTime;%0Aimport java.time.ZoneId;%0Aimport java.time.ZonedDateTime;%0Aimport java.util.Optional;%0A%0Aimport static org.junit.Assert.assertEquals;%0A%0Apublic class Issue406Test %7B%0A    @Test%0A    public void testDayOfWeekIsCorrectlyApplied() %7B%0A        // GIVEN a spring cron operating at 1AM every weekday%0A        final CronDefinition cronDefinition = CronDefinitionBuilder.instanceDefinitionFor(CronType.SPRING);%0A        final CronParser parser = new CronParser(cronDefinition);%0A        final ExecutionTime execTime = ExecutionTime.forCron(parser.parse(%220 0 1 * * MON-FRI%22));%0A%0A        // WHEN I get the next execution at 3AM on Saturday%0A        final ZonedDateTime threeAmFifthJanuary2019 = ZonedDateTime.of(%0A            LocalDate.of(2019, 1, 5),%0A            LocalTime.of(3, 0),%0A            ZoneId.systemDefault()%0A        );%0A        final Optional%3CZonedDateTime%3E nextExecution = execTime.nextExecution(threeAmFifthJanuary2019);%0A        %0A        // THEN the result is 1AM on Monday%0A        assertEquals(%0A            Optional.of(%0A                    ZonedDateTime.of(%0A                    LocalDate.of(2019, 1, 7),%0A                    LocalTime.of(1, 0),%0A                    ZoneId.systemDefault()%0A                )%0A            ),%0A            nextExecution%0A        );%0A    %7D%0A%7D%0A

Create Issue406Test.java