Skip to content

Commit

Permalink
add samples for localDateAssertions of api-fluent (#996) (#1006)
Browse files Browse the repository at this point in the history
  • Loading branch information
rhushikesh committed Oct 12, 2021
1 parent a6b0bea commit 1d8ffce
Show file tree
Hide file tree
Showing 4 changed files with 301 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,8 @@ import java.time.LocalDate
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.yearFeature
*
* @since 0.9.0
*/
val Expect<LocalDate>.year: Expect<Int>
Expand All @@ -28,6 +30,8 @@ val Expect<LocalDate>.year: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.year
*
* @since 0.9.0
*/
fun Expect<LocalDate>.year(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand All @@ -39,6 +43,8 @@ fun Expect<LocalDate>.year(assertionCreator: Expect<Int>.() -> Unit): Expect<Loc
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.monthFeature
*
* @since 0.9.0
*/
val Expect<LocalDate>.month: Expect<Int>
Expand All @@ -51,6 +57,8 @@ val Expect<LocalDate>.month: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.month
*
* @since 0.9.0
*/
fun Expect<LocalDate>.month(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand All @@ -62,6 +70,8 @@ fun Expect<LocalDate>.month(assertionCreator: Expect<Int>.() -> Unit): Expect<Lo
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.dayOfWeekFeature
*
* @since 0.9.0
*/
val Expect<LocalDate>.dayOfWeek: Expect<DayOfWeek>
Expand All @@ -74,6 +84,8 @@ val Expect<LocalDate>.dayOfWeek: Expect<DayOfWeek>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.dayOfWeek
*
* @since 0.9.0
*/
fun Expect<LocalDate>.dayOfWeek(assertionCreator: Expect<DayOfWeek>.() -> Unit): Expect<LocalDate> =
Expand All @@ -86,6 +98,8 @@ fun Expect<LocalDate>.dayOfWeek(assertionCreator: Expect<DayOfWeek>.() -> Unit):
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.dayFeature
*
* @since 0.9.0
*/
val Expect<LocalDate>.day: Expect<Int>
Expand All @@ -98,6 +112,8 @@ val Expect<LocalDate>.day: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.fluent.en_GB.samples.LocalDateExpectationSamples.day
*
* @since 0.9.0
*/
fun Expect<LocalDate>.day(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,141 @@
package ch.tutteli.atrium.api.fluent.en_GB.samples

import ch.tutteli.atrium.api.fluent.en_GB.*
import ch.tutteli.atrium.api.verbs.internal.expect
import java.time.DayOfWeek
import java.time.LocalDate
import java.time.Month
import kotlin.test.Test

class LocalDateExpectationSamples {

@Test
fun yearFeature() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.year.toEqual(2021)
// | subject is now of type Int

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.year.notToEqual(2021)
// | subject is now of type Int
}
}

@Test
fun year() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.year {
// subject inside this block is of type Int (actually 2021)
toEqual(2021)
toBeGreaterThan(2020)
} // subject here is back to type LocalDateTime

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.year {
// subject inside this block is of type Int (actually 2021)
notToEqual(2021)
toBeGreaterThan(2022)
toBeLessThan(2020)
} // subject here is back to type LocalDateTime
}
}

@Test
fun monthFeature() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.month.toEqual(Month.OCTOBER.value)
// | subject is now of type Int

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.month.toEqual(Month.SEPTEMBER.value)
// | subject is now of type Int
}
}

@Test
fun month() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.month {
// subject inside this block is of type Int (actually Month.OCTOBER.value i.e. 10)
toEqual(Month.OCTOBER.value)
notToEqual(Month.SEPTEMBER.value)
} // subject here is back to type LocalDateTime

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.month {
// subject inside this block is of type Int (actually Month.OCTOBER.value i.e. 10)
toEqual(Month.SEPTEMBER.value)
notToEqual(Month.OCTOBER.value)
} // subject here is back to type LocalDateTime
}
}

@Test
fun dayOfWeekFeature() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.dayOfWeek.toEqual(DayOfWeek.SATURDAY)
// | subject is now of type DayOfWeek

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.dayOfWeek.toEqual(DayOfWeek.MONDAY)
// | subject is now of type DayOfWeek
}
}

@Test
fun dayOfWeek() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.dayOfWeek {
// subject inside this block is of type DayOfWeek (actually SATURDAY)
toEqual(DayOfWeek.SATURDAY)
notToEqual(DayOfWeek.SUNDAY)
} // subject here is back to type LocalDateTime

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.dayOfWeek {
// subject inside this block is of type DayOfWeek (actually SATURDAY)
toEqual(DayOfWeek.MONDAY)
notToEqual(DayOfWeek.SATURDAY)
} // subject here is back to type LocalDateTime
}
}

@Test
fun dayFeature() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.day.toEqual(9)
// | subject is now of type Int

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.day.toEqual(5)
// | subject is now of type Int
}
}

@Test
fun day() {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.day {
// subject inside this block is of type Int (actually 9)
toEqual(9)
toBeGreaterThan(5)
} // subject here is back to type LocalDateTime

fails {
expect(LocalDate.of(2021, Month.OCTOBER, 9))
.day {
// subject inside this block is of type Int (actually 9)
toEqual(5)
toBeLessThan(7)
} // subject here is back to type LocalDateTime
}
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ import java.time.LocalDate
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.yearFeature
*
* @since 0.12.0
*/
val Expect<LocalDate>.year: Expect<Int>
Expand All @@ -29,6 +31,8 @@ val Expect<LocalDate>.year: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.year
*
* @since 0.12.0
*/
infix fun Expect<LocalDate>.year(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand All @@ -40,6 +44,8 @@ infix fun Expect<LocalDate>.year(assertionCreator: Expect<Int>.() -> Unit): Expe
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.monthFeature
*
* @since 0.12.0
*/
val Expect<LocalDate>.month: Expect<Int>
Expand All @@ -52,6 +58,8 @@ val Expect<LocalDate>.month: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.month
*
* @since 0.12.0
*/
infix fun Expect<LocalDate>.month(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand All @@ -63,6 +71,8 @@ infix fun Expect<LocalDate>.month(assertionCreator: Expect<Int>.() -> Unit): Exp
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.dayOfWeekFeature
*
* @since 0.12.0
*/
val Expect<LocalDate>.dayOfWeek: Expect<DayOfWeek>
Expand All @@ -75,6 +85,8 @@ val Expect<LocalDate>.dayOfWeek: Expect<DayOfWeek>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.dayOfWeek
*
* @since 0.12.0
*/
infix fun Expect<LocalDate>.dayOfWeek(assertionCreator: Expect<DayOfWeek>.() -> Unit): Expect<LocalDate> =
Expand All @@ -87,6 +99,8 @@ infix fun Expect<LocalDate>.dayOfWeek(assertionCreator: Expect<DayOfWeek>.() ->
*
* @return The newly created [Expect] for the extracted feature.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.dayFeature
*
* @since 0.12.0
*/
val Expect<LocalDate>.day: Expect<Int>
Expand All @@ -99,6 +113,8 @@ val Expect<LocalDate>.day: Expect<Int>
*
* @return an [Expect] for the subject of `this` expectation.
*
* @sample ch.tutteli.atrium.api.infix.en_GB.samples.LocalDateExpectationSamples.day
*
* @since 0.12.0
*/
infix fun Expect<LocalDate>.day(assertionCreator: Expect<Int>.() -> Unit): Expect<LocalDate> =
Expand Down
Loading

0 comments on commit 1d8ffce

Please sign in to comment.