@Test
    public void testStraightFlushVsStraightFlushWithGivenHandType() {
        FiveCardPokerHand straightFlush1 = new FiveCardPokerHand();
        assertTrue(straightFlush1.addCard(new Card(Suit.CLUB, Rank.ACE)));
        assertTrue(straightFlush1.addCard(new Card(Suit.CLUB, Rank.KING)));
        assertTrue(straightFlush1.addCard(new Card(Suit.CLUB, Rank.QUEEN)));
        assertTrue(straightFlush1.addCard(new Card(Suit.CLUB, Rank.JACK)));
        assertTrue(straightFlush1.addCard(new Card(Suit.CLUB, Rank.TEN)));

        FiveCardPokerHand straightFlush2 = new FiveCardPokerHand();
        assertTrue(straightFlush2.addCard(new Card(Suit.HEART, Rank.ACE)));
        assertTrue(straightFlush2.addCard(new Card(Suit.HEART, Rank.DEUCE)));
        assertTrue(straightFlush2.addCard(new Card(Suit.HEART, Rank.FIVE)));
        assertTrue(straightFlush2.addCard(new Card(Suit.HEART, Rank.FOUR)));
        assertTrue(straightFlush2.addCard(new Card(Suit.HEART, Rank.THREE)));

        SameHandTypeComparator newComparator = new SameHandTypeComparator(PokerHandType.STRAIGHT_FLUSH);        
        
        assertTrue(newComparator.compare(straightFlush1, straightFlush2) < 0);
    }