public static Coin getCoin(CoinType type) {
    return type.getConstructor().get();
  }
@Test
  void shouldReturnGoldCoinInstance() {
    final var goldCoin = CoinFactory.getCoin(CoinType.GOLD);
    assertTrue(goldCoin instanceof GoldCoin);
  }