How to use areEqualIgnoringNanos method of org.assertj.core.api.AbstractOffsetDateTimeAssert class

Best Assertj code snippet using org.assertj.core.api.AbstractOffsetDateTimeAssert.areEqualIgnoringNanos

Source:AbstractOffsetDateTimeAssert.java Github

copy

Full Screen

...573 */574 public SELF isEqualToIgnoringNanos(OffsetDateTime other) {575 Objects.instance().assertNotNull(info, actual);576 assertOffsetDateTimeParameterIsNotNull(other);577 if (!areEqualIgnoringNanos(actual, other)) {578 throw Failures.instance().failure(info, shouldBeEqualIgnoringNanos(actual, other));579 }580 return myself;581 }582 /**583 * Verifies that actual and given {@code OffsetDateTime} have same year, month, day, hour, minute, second and584 * nanosecond fields,585 * (timezone fields are ignored in comparison).586 * <p>587 * Code example :588 * <pre><code class='java'> // successful assertions589 * OffsetDateTime OffsetDateTime1 = OffsetDateTime.of(2000, 1, 1, 0, 0, 1, 0, ZoneOffset.UTC);590 * OffsetDateTime OffsetDateTime2 = OffsetDateTime.of(2000, 1, 1, 0, 0, 1, 0, ZoneOffset.MAX);591 * assertThat(OffsetDateTime1).isEqualToIgnoringTimezone(OffsetDateTime2);592 *593 * // failing assertions594 * OffsetDateTime OffsetDateTimeA = OffsetDateTime.of(2000, 1, 1, 0, 0, 1, 0, ZoneOffset.UTC);595 * OffsetDateTime OffsetDateTimeB = OffsetDateTime.of(2000, 1, 1, 0, 0, 0, 999999999, ZoneOffset.UTC);596 * assertThat(OffsetDateTimeA).isEqualToIgnoringTimezone(OffsetDateTimeB);</code></pre>597 *598 * @param other the given {@link java.time.OffsetDateTime}.599 * @return this assertion object.600 * @throws AssertionError if the actual {@code OffsetDateTime} is {@code null}.601 * @throws IllegalArgumentException if other {@code OffsetDateTime} is {@code null}.602 * @throws AssertionError if the actual {@code OffsetDateTime} is are not equal with timezone ignored.603 */604 public SELF isEqualToIgnoringTimezone(OffsetDateTime other) {605 Objects.instance().assertNotNull(info, actual);606 assertOffsetDateTimeParameterIsNotNull(other);607 if (!areEqualIgnoringTimezone(actual, other)) {608 throw Failures.instance().failure(info, shouldBeEqualIgnoringTimezone(actual, other));609 }610 return myself;611 }612 /**613 * Verifies that actual and given {@link java.time.OffsetDateTime} have same year, month, day, hour and minute fields614 * (second and615 * nanosecond fields are ignored in comparison).616 * <p>617 * Assertion can fail with OffsetDateTimes in same chronological second time window, e.g :618 * <p>619 * 2000-01-01T00:<b>01:00</b>.000+01:00 and 2000-01-01T00:<b>00:59</b>.000+01:00.620 * <p>621 * Assertion fails as minute fields differ even if time difference is only 1s.622 * <p>623 * Code example :624 * <pre><code class='java'> // successful assertions625 * OffsetDateTime OffsetDateTime1 = OffsetDateTime.of(2000, 1, 1, 23, 50, 0, 0, ZoneOffset.UTC);626 * OffsetDateTime OffsetDateTime2 = OffsetDateTime.of(2000, 1, 1, 23, 50, 10, 456, ZoneOffset.UTC);627 * assertThat(OffsetDateTime1).isEqualToIgnoringSeconds(OffsetDateTime2);628 *629 * // failing assertions (even if time difference is only 1ms)630 * OffsetDateTime OffsetDateTimeA = OffsetDateTime.of(2000, 1, 1, 23, 50, 00, 000, ZoneOffset.UTC);631 * OffsetDateTime OffsetDateTimeB = OffsetDateTime.of(2000, 1, 1, 23, 49, 59, 999, ZoneOffset.UTC);632 * assertThat(OffsetDateTimeA).isEqualToIgnoringSeconds(OffsetDateTimeB);</code></pre>633 *634 * @param other the given {@link java.time.OffsetDateTime}.635 * @return this assertion object.636 * @throws AssertionError if the actual {@code OffsetDateTime} is {@code null}.637 * @throws IllegalArgumentException if other {@code OffsetDateTime} is {@code null}.638 * @throws AssertionError if the actual {@code OffsetDateTime} is are not equal with second and nanosecond fields639 * ignored.640 */641 public SELF isEqualToIgnoringSeconds(OffsetDateTime other) {642 Objects.instance().assertNotNull(info, actual);643 assertOffsetDateTimeParameterIsNotNull(other);644 if (!areEqualIgnoringSeconds(actual, other)) {645 throw Failures.instance().failure(info, shouldBeEqualIgnoringSeconds(actual, other));646 }647 return myself;648 }649 /**650 * Verifies that actual and given {@code OffsetDateTime} have same year, month, day and hour fields (minute, second651 * and652 * nanosecond fields are ignored in comparison).653 * <p>654 * Assertion can fail with OffsetDateTimes in same chronological second time window, e.g :655 * <p>656 * 2000-01-01T<b>01:00</b>:00.000+01:00 and 2000-01-01T<b>00:59:59</b>.000+01:00.657 * <p>658 * Time difference is only 1s but hour fields differ.659 * <p>660 * Code example :661 * <pre><code class='java'> // successful assertions662 * OffsetDateTime OffsetDateTime1 = OffsetDateTime.of(2000, 1, 1, 23, 50, 0, 0, ZoneOffset.UTC);663 * OffsetDateTime OffsetDateTime2 = OffsetDateTime.of(2000, 1, 1, 23, 00, 2, 7, ZoneOffset.UTC);664 * assertThat(OffsetDateTime1).isEqualToIgnoringMinutes(OffsetDateTime2);665 *666 * // failing assertions (even if time difference is only 1ms)667 * OffsetDateTime OffsetDateTimeA = OffsetDateTime.of(2000, 1, 1, 01, 00, 00, 000, ZoneOffset.UTC);668 * OffsetDateTime OffsetDateTimeB = OffsetDateTime.of(2000, 1, 1, 00, 59, 59, 999, ZoneOffset.UTC);669 * assertThat(OffsetDateTimeA).isEqualToIgnoringMinutes(OffsetDateTimeB);</code></pre>670 *671 * @param other the given {@link java.time.OffsetDateTime}.672 * @return this assertion object.673 * @throws AssertionError if the actual {@code OffsetDateTime} is {@code null}.674 * @throws IllegalArgumentException if other {@code OffsetDateTime} is {@code null}.675 * @throws AssertionError if the actual {@code OffsetDateTime} is are not equal ignoring minute, second and nanosecond676 * fields.677 */678 public SELF isEqualToIgnoringMinutes(OffsetDateTime other) {679 Objects.instance().assertNotNull(info, actual);680 assertOffsetDateTimeParameterIsNotNull(other);681 if (!areEqualIgnoringMinutes(actual, other)) {682 throw Failures.instance().failure(info, shouldBeEqualIgnoringMinutes(actual, other));683 }684 return myself;685 }686 /**687 * Verifies that actual and given {@code OffsetDateTime} have same year, month and day fields (hour, minute, second688 * and nanosecond fields are ignored in comparison).689 * <p>690 * Assertion can fail with OffsetDateTimes in same chronological minute time window, e.g :691 * <p>692 * 2000-01-<b>01T23:59</b>:00.000+01:00 and 2000-01-02T<b>00:00</b>:00.000+01:00.693 * <p>694 * Time difference is only 1min but day fields differ.695 * <p>696 * Code example :697 * <pre><code class='java'> // successful assertions698 * OffsetDateTime OffsetDateTime1 = OffsetDateTime.of(2000, 1, 1, 23, 59, 59, 999, ZoneOffset.UTC);699 * OffsetDateTime OffsetDateTime2 = OffsetDateTime.of(2000, 1, 1, 00, 00, 00, 000, ZoneOffset.UTC);700 * assertThat(OffsetDateTime1).isEqualToIgnoringHours(OffsetDateTime2);701 *702 * // failing assertions (even if time difference is only 1ms)703 * OffsetDateTime OffsetDateTimeA = OffsetDateTime.of(2000, 1, 2, 00, 00, 00, 000, ZoneOffset.UTC);704 * OffsetDateTime OffsetDateTimeB = OffsetDateTime.of(2000, 1, 1, 23, 59, 59, 999, ZoneOffset.UTC);705 * assertThat(OffsetDateTimeA).isEqualToIgnoringHours(OffsetDateTimeB);</code></pre>706 *707 * @param other the given {@link java.time.OffsetDateTime}.708 * @return this assertion object.709 * @throws AssertionError if the actual {@code OffsetDateTime} is {@code null}.710 * @throws IllegalArgumentException if other {@code OffsetDateTime} is {@code null}.711 * @throws AssertionError if the actual {@code OffsetDateTime} is are not equal with second and nanosecond fields712 * ignored.713 */714 public SELF isEqualToIgnoringHours(OffsetDateTime other) {715 Objects.instance().assertNotNull(info, actual);716 assertOffsetDateTimeParameterIsNotNull(other);717 if (!haveSameYearMonthAndDayOfMonth(actual, other)) {718 throw Failures.instance().failure(info, shouldBeEqualIgnoringHours(actual, other));719 }720 return myself;721 }722 /**723 * Verifies that the actual {@link OffsetDateTime} is in the [start, end] period (start and end included) according to the comparator in use.724 * <p>725 * <b>Breaking change</b> since 3.15.0 The default comparator uses {@link OffsetDateTime#timeLineOrder()}726 * which only compares the underlying instant and ignores different timezones / offsets / chronologies.<br>727 * This behaviour can be overridden by {@link AbstractOffsetDateTimeAssert#usingComparator(Comparator)}.728 * <p>729 * Example:730 * <pre><code class='java'> OffsetDateTime offsetDateTime = OffsetDateTime.now();731 *732 * // assertions succeed:733 * assertThat(offsetDateTime).isBetween(offsetDateTime.minusSeconds(1), offsetDateTime.plusSeconds(1))734 * .isBetween(offsetDateTime, offsetDateTime.plusSeconds(1))735 * .isBetween(offsetDateTime.minusSeconds(1), offsetDateTime)736 * .isBetween(offsetDateTime, offsetDateTime);737 * // succeeds with default comparator which compares the point in time738 * assertThat(parse("2010-01-01T00:00:00Z")).isBetween(parse("2010-01-01T01:00:00+01:00"),739 * parse("2010-01-01T01:00:00+01:00"));740 *741 * // assertions fail:742 * assertThat(offsetDateTime).isBetween(offsetDateTime.minusSeconds(10), offsetDateTime.minusSeconds(1));743 * assertThat(offsetDateTime).isBetween(offsetDateTime.plusSeconds(1), offsetDateTime.plusSeconds(10));744 *745 * // succeeds with default comparator746 * assertThat(parse("2010-01-01T00:00:00Z")).isBetween(parse("2010-01-01T01:00:00+01:00"),747 * parse("2010-01-01T01:00:00+01:00"));748 * // fails with a comparator which checks the offset, too749 * assertThat(parse("2010-01-01T00:00:00Z")).usingComparator(OffsetDateTime::compareTo)750 * .isBetween(parse("2010-01-01T01:00:00+01:00"),751 * parse("2010-01-01T01:00:00+01:00"));</code></pre>752 *753 * @param startExclusive the start value (exclusive), expected not to be null.754 * @param endExclusive the end value (exclusive), expected not to be null.755 * @return this assertion object.756 * @throws AssertionError if the actual value is {@code null}.757 * @throws NullPointerException if start value is {@code null}.758 * @throws NullPointerException if end value is {@code null}.759 * @throws AssertionError if the actual value is not in [start, end] period according to the comparator in use.760 *761 * @since 3.7.1762 */763 public SELF isBetween(OffsetDateTime startExclusive, OffsetDateTime endExclusive) {764 comparables.assertIsBetween(info, actual, startExclusive, endExclusive, true, true);765 return myself;766 }767 /**768 * Same assertion as {@link #isBetween(OffsetDateTime, OffsetDateTime)} but here you pass {@link OffsetDateTime} String representations769 * which must follow <a href="http://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html#ISO_OFFSET_DATE_TIME">ISO OffsetDateTime format</a>770 * to allow calling {@link OffsetDateTime#parse(CharSequence)} method.771 * <p>772 * <b>Breaking change</b> since 3.15.0 The default comparator uses {@link OffsetDateTime#timeLineOrder()}773 * which only compares the underlying instant and ignores different timezones / offsets / chronologies.<br>774 * This behaviour can be overridden by {@link AbstractOffsetDateTimeAssert#usingComparator(Comparator)}.775 * <p>776 * Example:777 * <pre><code class='java'> OffsetDateTime firstOfJanuary2000 = OffsetDateTime.parse("2000-01-01T00:00:00Z");778 *779 * // assertions succeed:780 * assertThat(firstOfJanuary2000).isBetween("1999-12-31T23:59:59Z", "2000-01-01T00:00:01Z")781 * .isBetween("2000-01-01T00:00:00Z", "2000-01-01T00:00:01Z")782 * .isBetween("1999-12-31T23:59:59Z", "2000-01-01T00:00:00Z")783 * .isBetween("2000-01-01T00:00:00Z", "2000-01-01T00:00:00Z")784 * // same instant as firstOfJanuary2000 but on a different offset785 * .isBetween("2000-01-01T01:00:00+01:00", "2000-01-01T01:00:00+01:00");786 *787 * // assertion fails:788 * assertThat(firstOfJanuary2000).isBetween("1999-01-01T00:00:01Z", "1999-12-31T23:59:59Z");</code></pre>789 *790 * @param startExclusive the start value (exclusive), expected not to be null.791 * @param endExclusive the end value (exclusive), expected not to be null.792 * @return this assertion object.793 *794 * @throws AssertionError if the actual value is {@code null}.795 * @throws NullPointerException if start value is {@code null}.796 * @throws NullPointerException if end value is {@code null}.797 * @throws DateTimeParseException if any of the given String can't be converted to a {@link OffsetDateTime}.798 * @throws AssertionError if the actual value is not in [start, end] period.799 *800 * @since 3.7.1801 */802 public SELF isBetween(String startExclusive, String endExclusive) {803 return isBetween(parse(startExclusive), parse(endExclusive));804 }805 /**806 * Verifies that the actual {@link OffsetDateTime} is in the ]start, end[ period (start and end excluded) according to807 * the comparator in use.808 * <p>809 * <b>Breaking change</b> since 3.15.0 The default comparator uses {@link OffsetDateTime#timeLineOrder()}810 * which only compares the underlying instant and ignores different timezones / offsets / chronologies.<br>811 * This behaviour can be overridden by {@link AbstractOffsetDateTimeAssert#usingComparator(Comparator)}.812 * <p>813 * Example:814 * <pre><code class='java'> OffsetDateTime offsetDateTime = OffsetDateTime.now();815 *816 * // assertions succeed:817 * assertThat(offsetDateTime).isStrictlyBetween(offsetDateTime.minusSeconds(1), offsetDateTime.plusSeconds(1));818 * // succeeds with a different comparator even though the end value refers to the same instant as the actual819 * assertThat(parse("2010-01-01T12:00:00Z")).usingComparator(OffsetDateTime::compareTo)820 * .isStrictlyBetween(parse("2010-01-01T12:59:59+01:00"),821 * parse("2010-01-01T13:00:00+01:00"));822 *823 * // assertions fail:824 * assertThat(offsetDateTime).isStrictlyBetween(offsetDateTime.minusSeconds(10), offsetDateTime.minusSeconds(1));825 * assertThat(offsetDateTime).isStrictlyBetween(offsetDateTime.plusSeconds(1), offsetDateTime.plusSeconds(10));826 * assertThat(offsetDateTime).isStrictlyBetween(offsetDateTime, offsetDateTime.plusSeconds(1));827 * assertThat(offsetDateTime).isStrictlyBetween(offsetDateTime.minusSeconds(1), offsetDateTime);828 *829 * // fails with default comparator since the end value refers to the same instant as the actual830 * assertThat(parse("2010-01-01T12:00:00Z")).isStrictlyBetween(parse("2010-01-01T12:59:59+01:00"),831 * parse("2010-01-01T13:00:00+01:00"));</code></pre>832 *833 * @param startExclusive the start value (exclusive), expected not to be null.834 * @param endExclusive the end value (exclusive), expected not to be null.835 * @return this assertion object.836 * @throws AssertionError if the actual value is {@code null}.837 * @throws NullPointerException if start value is {@code null}.838 * @throws NullPointerException if end value is {@code null}.839 * @throws AssertionError if the actual value is not in ]start, end[ period according to the comparator in use.840 *841 * @since 3.7.1842 */843 public SELF isStrictlyBetween(OffsetDateTime startExclusive, OffsetDateTime endExclusive) {844 comparables.assertIsBetween(info, actual, startExclusive, endExclusive, false, false);845 return myself;846 }847 /**848 * Same assertion as {@link #isStrictlyBetween(OffsetDateTime, OffsetDateTime)} but here you pass {@link OffsetDateTime} String representations849 * which must follow <a href="http://docs.oracle.com/javase/8/docs/api/java/time/format/DateTimeFormatter.html#ISO_OFFSET_DATE_TIME">ISO OffsetDateTime format</a>850 * to allow calling {@link OffsetDateTime#parse(CharSequence)} method.851 * <p>852 * <b>Breaking change</b> since 3.15.0 The default comparator uses {@link OffsetDateTime#timeLineOrder()}853 * which only compares the underlying instant and ignores different timezones / offsets / chronologies.<br>854 * This behaviour can be overridden by {@link AbstractOffsetDateTimeAssert#usingComparator(Comparator)}.855 * <p>856 * Example:857 * <pre><code class='java'> OffsetDateTime firstOfJanuary2000 = OffsetDateTime.parse("2000-01-01T00:00:00Z");858 *859 * // assertion succeeds:860 * assertThat(firstOfJanuary2000).isStrictlyBetween("1999-12-31T23:59:59Z", "2000-01-01T00:00:01Z")861 * // succeeds with a different comparator even though the end value refers to the same instant as the actual862 * .usingComparator(OffsetDateTime::compareTo)863 * .isStrictlyBetween("1999-12-31T23:59:59Z", "2000-01-01T01:00:00+01:00");864 *865 * // assertions fail:866 * assertThat(firstOfJanuary2000).isStrictlyBetween("1999-01-01T00:00:01Z", "1999-12-31T23:59:59Z");867 * assertThat(firstOfJanuary2000).isStrictlyBetween("2000-01-01T00:00:00Z", "2000-01-01T00:00:01Z");868 * assertThat(firstOfJanuary2000).isStrictlyBetween("1999-12-31T23:59:59Z", "2000-01-01T00:00:00Z");869 * // fails with default comparator since the end value refers to the same instant as the actual870 * assertThat(parse("2010-01-01T12:00:00Z")).isStrictlyBetween("2010-01-01T12:59:59+01:00", "2010-01-01T13:00:00+01:00");</code></pre>871 *872 * @param startExclusive the start value (exclusive), expected not to be null.873 * @param endExclusive the end value (exclusive), expected not to be null.874 * @return this assertion object.875 *876 * @throws AssertionError if the actual value is {@code null}.877 * @throws NullPointerException if start value is {@code null}.878 * @throws NullPointerException if end value is {@code null}.879 * @throws DateTimeParseException if any of the given String can't be converted to a {@link OffsetDateTime}.880 * @throws AssertionError if the actual value is not in ]start, end[ period.881 *882 * @since 3.7.1883 */884 public SELF isStrictlyBetween(String startExclusive, String endExclusive) {885 return isStrictlyBetween(parse(startExclusive), parse(endExclusive));886 }887 /** {@inheritDoc} */888 @Override889 @CheckReturnValue890 public SELF usingDefaultComparator() {891 SELF self = super.usingDefaultComparator();892 self.comparables = buildDefaultComparables();893 return self;894 }895 private Comparables buildDefaultComparables() {896 OffsetDateTimeByInstantComparator defaultComparator = OffsetDateTimeByInstantComparator.getInstance();897 return new Comparables(new ComparatorBasedComparisonStrategy(defaultComparator, defaultComparator.description()));898 }899 /**900 * Verifies that actual and given {@code OffsetDateTime} are at the same {@link java.time.Instant}.901 * <p>902 * Example:903 * <pre><code class='java'> OffsetDateTime offsetDateTime1 = OffsetDateTime.of(2000, 12, 12, 3, 0, 0, 0, ZoneOffset.ofHours(3));904 * OffsetDateTime offsetDateTime2 = OffsetDateTime.of(2000, 12, 12, 0, 0, 0, 0, ZoneOffset.ofHours(0));905 * // assertion succeeds906 * assertThat(offsetDateTime1).isAtSameInstantAs(offsetDateTime2);907 *908 * offsetDateTime2 = OffsetDateTime.of(2000, 12, 12, 2, 0, 0, 0, ZoneOffset.ofHours(0));909 * // assertion fails910 * assertThat(offsetDateTime1).isAtSameInstantAs(offsetDateTime2);</code></pre>911 *912 * @param other the given {@link OffsetDateTime}.913 * @return this assertion object.914 * @throws AssertionError if the actual {@code OffsetDateTime} is {@code null}.915 * @throws IllegalArgumentException if other {@code OffsetDateTime} is {@code null}.916 * @throws AssertionError if the actual {@code OffsetDateTime} is not at the same {@code Instant} as the other.917 */918 public SELF isAtSameInstantAs(OffsetDateTime other) {919 Objects.instance().assertNotNull(info, actual);920 assertOffsetDateTimeParameterIsNotNull(other);921 if (!actual.toInstant().equals(other.toInstant()))922 throw Failures.instance().failure(info, shouldBeAtSameInstant(actual, other));923 return myself;924 }925 /**926 * {@inheritDoc}927 */928 @Override929 protected OffsetDateTime parse(String offsetDateTimeAsString) {930 return OffsetDateTime.parse(offsetDateTimeAsString);931 }932 /**933 * Returns true if both OffsetDateTime are in the same year, month and day of month, hour, minute and second, false934 * otherwise.935 *936 * @param actual the actual OffsetDateTime. expected not be null937 * @param other the other OffsetDateTime. expected not be null938 * @return true if both OffsetDateTime are in the same year, month and day of month, hour, minute and second, false939 * otherwise.940 */941 private static boolean areEqualIgnoringNanos(OffsetDateTime actual, OffsetDateTime other) {942 return areEqualIgnoringSeconds(actual, other) && actual.getSecond() == other.getSecond();943 }944 /**945 * Returns true if both OffsetDateTime are in the same year, month, day of month, hour and minute, false otherwise.946 *947 * @param actual the actual OffsetDateTime. expected not be null948 * @param other the other OffsetDateTime. expected not be null949 * @return true if both OffsetDateTime are in the same year, month, day of month, hour and minute, false otherwise.950 */951 private static boolean areEqualIgnoringSeconds(OffsetDateTime actual, OffsetDateTime other) {952 return areEqualIgnoringMinutes(actual, other) && actual.getMinute() == other.getMinute();953 }954 /**955 * Returns true if both OffsetDateTime are in the same year, month, day of month and hour, false otherwise.956 *957 * @param actual the actual OffsetDateTime. expected not be null958 * @param other the other OffsetDateTime. expected not be null959 * @return true if both OffsetDateTime are in the same year, month, day of month and hour, false otherwise.960 */961 private static boolean areEqualIgnoringMinutes(OffsetDateTime actual, OffsetDateTime other) {962 return haveSameYearMonthAndDayOfMonth(actual, other) && actual.getHour() == other.getHour();963 }964 /**965 * Returns true if both OffsetDateTime are in the same year, month and day of month, false otherwise.966 *967 * @param actual the actual OffsetDateTime. expected not be null968 * @param other the other OffsetDateTime. expected not be null969 * @return true if both OffsetDateTime are in the same year, month and day of month, false otherwise970 */971 private static boolean haveSameYearMonthAndDayOfMonth(OffsetDateTime actual, OffsetDateTime other) {972 return haveSameYearAndMonth(actual, other) && actual.getDayOfMonth() == other.getDayOfMonth();973 }974 /**975 * Returns true if both OffsetDateTime are in the same year and month, false otherwise.976 *977 * @param actual the actual OffsetDateTime. expected not be null978 * @param other the other OffsetDateTime. expected not be null979 * @return true if both OffsetDateTime are in the same year and month, false otherwise980 */981 private static boolean haveSameYearAndMonth(OffsetDateTime actual, OffsetDateTime other) {982 return haveSameYear(actual, other) && actual.getMonth() == other.getMonth();983 }984 /**985 * Returns true if both OffsetDateTime are in the same year, false otherwise.986 *987 * @param actual the actual OffsetDateTime. expected not be null988 * @param other the other OffsetDateTime. expected not be null989 * @return true if both OffsetDateTime are in the same year, false otherwise990 */991 private static boolean haveSameYear(OffsetDateTime actual, OffsetDateTime other) {992 return actual.getYear() == other.getYear();993 }994 /**995 * Returns true if both OffsetDateTime are in the same hour, minute, second and nanosecond false otherwise.996 *997 * @param actual the actual OffsetDateTime. expected not be null998 * @param other the other OffsetDateTime. expected not be null999 * @return true if both OffsetDateTime are in the same hour, minute, second and nanosecond false otherwise.1000 */1001 private static boolean areEqualIgnoringTimezone(OffsetDateTime actual, OffsetDateTime other) {1002 return areEqualIgnoringNanos(actual, other) && haveSameNano(actual, other);1003 }1004 /**1005 * Returns true if both OffsetDateTime are in the same nanosecond, false otherwise.1006 *1007 * @param actual the actual OffsetDateTime. expected not be null1008 * @param other the other OffsetDateTime. expected not be null1009 * @return true if both OffsetDateTime are in the same year, false otherwise1010 */1011 private static boolean haveSameNano(OffsetDateTime actual, OffsetDateTime other) {1012 return actual.getNano() == other.getNano();1013 }1014 private static Object[] convertToOffsetDateTimeArray(String... dateTimesAsString) {1015 OffsetDateTime[] dates = new OffsetDateTime[dateTimesAsString.length];1016 for (int i = 0; i < dateTimesAsString.length; i++) {...

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1import static org.assertj.core.api.Assertions.assertThat; 2import java.time.OffsetDateTime; 3import org.junit.Test; 4public class OffsetDateTimeAssert_isEqualToIgnoringNanos_Test { 5 public void test_isEqualToIgnoringNanos_assertion() { 6 OffsetDateTime dateTime = OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 1, ZoneOffset.UTC); 7 assertThat(dateTime).isEqualToIgnoringNanos(OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 2, ZoneOffset.UTC)); 8 } 9}10import static org.assertj.core.api.Assertions.assertThat; 11import java.time.OffsetDateTime; 12import org.junit.Test; 13public class OffsetDateTimeAssert_isEqualToIgnoringNanos_Test { 14 public void test_isEqualToIgnoringNanos_assertion() { 15 OffsetDateTime dateTime = OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 1, ZoneOffset.UTC); 16 assertThat(dateTime).isEqualToIgnoringNanos(OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 2, ZoneOffset.UTC)); 17 } 18}19public class OffsetDateTimeAssert_isEqualToIgnoringNanos_Test { 20 public void test_isEqualToIgnoringNanos_assertion() { 21 OffsetDateTime dateTime = OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 1, ZoneOffset.UTC); 22 assertThat(dateTime).isEqualToIgnoringNanos(OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 2, ZoneOffset.UTC)); 23 } 24}25public void test_isEqualToIgnoringNanos_assertion() { 26 OffsetDateTime dateTime = OffsetDateTime.of(2018, 1, 1, 0, 0, 0, 1, ZoneOffset.UTC); 27 assertThat(dateTime).isEqualToIgnoringNanos(OffsetDateTime.of(2018, 1, 1,

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1import static java.time.Month.*;2import static java.time.OffsetDateTime.parse;3import static java.time.ZoneOffset.UTC;4import java.time.OffsetDateTime;5import org.junit.Test;6import static org.assertj.core.api.Assertions.assertThat;7public class OffsetDateTimeAssert_areEqualIgnoringNanos_Test {8 private final OffsetDateTime refOffsetDateTime = OffsetDateTime.of(2000, 1, 1, 0, 0, 0, 0, UTC);9 public void should_pass_if_actual_is_equal_to_other_ignoring_nanosecond_fields() {10 assertThat(refOffsetDateTime).isEqualToIgnoringNanos(refOffsetDateTime.withNano(55));11 }12 public void should_fail_if_actual_is_not_equal_to_given_offsetdatetime_with_nanosecond_ignored() {13 thrown.expectAssertionError("%nExpecting:%n <2000-01-01T00:00Z>%nto have same year, month, day, hour and minute as:%n <2000-01-01T00:01Z>%nbut had not.");14 assertThat(refOffsetDateTime).isEqualToIgnoringNanos(refOffsetDateTime.withMinute(1));15 }16 public void should_fail_as_seconds_fields_are_different_even_if_time_difference_is_less_than_a_second() {17 thrown.expectAssertionError("%nExpecting:%n <2000-01-01T00:00Z>%nto have same year, month, day, hour and minute as:%n <2000-01-01T00:00:00.000000001Z>%nbut had not.");18 assertThat(refOffsetDateTime).isEqualToIgnoringNanos(refOffsetDateTime.plusNanos(1));19 }20 public void should_fail_if_actual_is_not_equal_to_given_offsetdatetime_with_nanosecond_ignored_whatever_custom_comparison_strategy_is() {21 thrown.expectAssertionError("%nExpecting:%n <2000-01-01T00:00Z>%nto have same year, month, day, hour and minute as:%n <2000-01-01T00:01Z>%nbut had not.");22 assertThat(refOffsetDateTime).withComparatorForType(ALWAY_EQUALS_OFFSETDATETIME_COMPARATOR, OffsetDateTime.class)23 .isEqualToIgnoringNanos(refOffsetDateTime.withMinute(1));24 }25 public void should_fail_if_actual_is_null() {

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1public void test() {2 OffsetDateTime date = OffsetDateTime.of(2018, 12, 31, 23, 59, 59, 0, ZoneOffset.UTC);3 OffsetDateTime date2 = OffsetDateTime.of(2018, 12, 31, 23, 59, 59, 1000, ZoneOffset.UTC);4 assertThat(date).isNotEqualTo(date2);5 assertThat(date).isNotEqualToIgnoringNanos(date2);6}7public void test() {8 OffsetDateTime date = OffsetDateTime.of(2018, 12, 31, 23, 59, 59, 0, ZoneOffset.UTC);9 OffsetDateTime date2 = OffsetDateTime.of(2018, 12, 31, 23, 59, 59, 1000, ZoneOffset.UTC);10 assertThat(date).isNotEqualTo(date2);11 assertThat(date).isNotEqualToIgnoringNanos(date2);12}

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1import static java.time.OffsetDateTime.of;2import static java.time.ZoneOffset.UTC;3import static org.assertj.core.api.Assertions.assertThat;4import static org.assertj.core.api.Assertions.within;5import static org.assertj.core.api.Assertions.withinNanos;6import static org.assertj.core.api.Assertions.withinSeconds;7import java.time.OffsetDateTime;8import org.junit.jupiter.api.Test;9class OffsetDateTimeAssert_isEqualTo_Test {10 private final OffsetDateTime refOffsetDateTime = of(2000, 1, 1, 0, 0, 0, 0, UTC);11 private final OffsetDateTime beforeOffsetDateTime = of(1999, 12, 31, 23, 59, 59, 999_999_999, UTC);12 private final OffsetDateTime afterOffsetDateTime = of(2000, 1, 1, 0, 0, 0, 1, UTC);13 void should_pass_if_actual_is_equal_to_other() {14 assertThat(refOffsetDateTime).isEqualTo(refOffsetDateTime);15 }16 void should_fail_if_actual_is_not_equal_to_given_offsetdatetime() {17 assertThatThrownBy(() -> assertThat(refOffsetDateTime).isEqualTo(beforeOffsetDateTime)).isInstanceOf(AssertionError.class);18 }19 void should_fail_as_seconds_fields_are_different_even_if_time_difference_is_less_than_a_second() {20 assertThatThrownBy(() -> assertThat(refOffsetDateTime).isEqualTo(afterOffsetDateTime)).isInstanceOf(AssertionError.class);21 }22 void should_pass_if_actual_is_equal_to_given_offsetdatetime_with_offset() {23 assertThat(refOffsetDateTime).isEqualTo("2000-01-01T00:00:00+00:00");24 }25 void should_fail_if_actual_is_not_equal_to_given_string_as_offsetdatetime_representation() {26 assertThatThrownBy(() -> assertThat(refOffsetDateTime).isEqualTo("1999-12-31T23:59:59.999999999+00:00")).isInstanceOf(AssertionError.class);27 }28 void should_fail_if_actual_is_not_equal_to_given_string_as_offsetdatetime_representation_with_offset() {29 assertThatThrownBy(() -> assertThat(refOffsetDateTime).isEqualTo("1999-12-31T23:59:59.999999999+01:00")).isInstanceOf(AssertionError.class

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1import static org.assertj.core.api.Assertions.assertThat;2import java.time.OffsetDateTime;3public class OffsetDateTimeAssert_isEqualToIgnoringNanos_Test {4 public void should_pass_if_actual_is_equal_to_other_ignoring_nanosecond_fields() {5 assertThat(OffsetDateTime.parse("2000-01-01T03:00:05.123Z")).isEqualToIgnoringNanos(OffsetDateTime.parse("2000-01-01T03:00:05.456Z"));6 }7 public void should_fail_if_actual_is_not_equal_to_given_offsetdatetime_with_nanosecond_ignored() {8 assertThatExceptionOfType(AssertionError.class).isThrownBy(() -> assertThat(OffsetDateTime.parse("2000-01-01T03:00:05.123Z")).isEqualToIgnoringNanos(OffsetDateTime.parse("2000-01-01T03:00:06.000Z")))9 .withMessage("expected:<2000-01-01T03:00:0[6].000Z> but was:<2000-01-01T03:00:0[5].123Z>");10 }11}121. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 2. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 3. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 4. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 5. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 6. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 7. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 8. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 9. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 10. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 11. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 12. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 13. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 14. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 15. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 16. AssertJ OffsetDateTimeAssert isEqualToIgnoringNanos() 17. AssertJ OffsetDateTimeAssert isEqualToIgnoringN

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1import static org.assertj.core.api.Assertions.assertThat;2import java.time.OffsetDateTime;3import org.junit.jupiter.api.Test;4import static org.assertj.core.api.Assertions.within;5public class OffsetDateTimeAssert_isEqualToIgnoringNanos_Test {6 public void test_isEqualToIgnoringNanos_assertion() {7 OffsetDateTime offsetDateTime1 = OffsetDateTime.parse("2007-12-03T10:15:30+01:00");8 OffsetDateTime offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:30.000000001+01:00");9 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2);10 offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:30.000000009+01:00");11 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2);12 offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:31+01:00");13 assertThat(offsetDateTime1).isNotEqualToIgnoringNanos(offsetDateTime2);14 offsetDateTime2 = OffsetDateTime.parse("2008-12-03T10:15:30+01:00");15 assertThat(offsetDateTime1).isNotEqualToIgnoringNanos(offsetDateTime2);16 offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:30+02:00");17 assertThat(offsetDateTime1).isNotEqualToIgnoringNanos(offsetDateTime2);18 offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:30+01:00");19 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2);20 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2.toString());21 offsetDateTime2 = OffsetDateTime.parse("2007-12-03T10:15:30.000000001+01:00");22 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2);23 assertThat(offsetDateTime1).isEqualToIgnoringNanos(offsetDateTime2.toString());

Full Screen

Full Screen

areEqualIgnoringNanos

Using AI Code Generation

copy

Full Screen

1public class AssertJOffsetDateTimeAssertExamples {2 public void testOffsetDateTimeAssert() {3 OffsetDateTime offsetDateTime = OffsetDateTime.of(2018, 9, 1, 12, 0, 0, 0, ZoneOffset.UTC);4 assertThat(offsetDateTime).isAfterOrEqualTo("2018-09-01T12:00:00Z")5 .isAfterOrEqualTo("2018-09-01T12:00:00+00:00")6 .isAfterOrEqualTo("2018-09-01T12:00:00+00:00[UTC]")7 .isAfterOrEqualTo("2018-09-01T12:00:00+00:00[UTC]");8 assertThat(offsetDateTime).isEqualTo("2018-09-01T12:00:00Z")9 .isEqualTo("2018-09-01T12:00:00+00:00")10 .isEqualTo("2018-09-01T12:00:00+00:00[UTC]")11 .isEqualTo("2018-09-01T12:00:00+00:00[UTC]");12 assertThat(offsetDateTime).isBeforeOrEqualTo("2018-09-01T12:00:00Z")13 .isBeforeOrEqualTo("2018-09-01T12:00:00+00:00")14 .isBeforeOrEqualTo("2018-09-01T12:00:00+00:00[UTC]")15 .isBeforeOrEqualTo("2018-09-01T12:00:00+00:00[UTC]");16 assertThat(offsetDateTime).isNotEqualTo("2018-09-01T12:00:00Z")17 .isNotEqualTo("2018-09-01T12:00:00+00:00")18 .isNotEqualTo("2018-09-01T12:00:00+00:00[UTC]")19 .isNotEqualTo("2018-09-01T12:00:00+00:00[UTC]");20 assertThat(offsetDateTime).isNotAfter("2018-09-01T12:00:00Z")21 .isNotAfter("2018-09-01T12:00:00+00:00")

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful