@Test
void equals() {

    final Ratio ratio = Ratio.fromRaw("2.64");
    final Ratio ratio2 = Ratio.fromRaw("2.65");
    final Ratio ratio3 = Ratio.fromRaw("2.64"); // compare two of the same
    assertSoftly(softly -> {
        softly.assertThat(ratio)
            .isNotEqualTo(null);
        softly.assertThat(ratio)
            .isNotEqualTo(UUID.randomUUID()
                .toString());
        softly.assertThat(ratio)
            .isEqualTo(ratio);
        softly.assertThat(ratio)
            .isNotEqualTo(ratio2);
        softly.assertThat(ratio2)
            .isNotEqualTo(ratio);
        softly.assertThat(ratio3)
            .isEqualTo(ratio);
        softly.assertThat(ratio)
            .isEqualTo(ratio3);
    });
    final Ratio ratio4 = Ratio.fromRaw(BigDecimal.ZERO);
    Assertions.assertThat(ratio4)
        .isSameAs(Ratio.ZERO);
    final Ratio ratio5 = Ratio.fromRaw(BigDecimal.ONE);
    Assertions.assertThat(ratio5)
        .isSameAs(Ratio.ONE);
}