@Test
    public void testPlay()
    {
        // use implementation knowledge, to verifiy Game's behaviour.

        // Knowledge: Paper > Rock
        _underTest = new Game(_paperPlayer, _rockPlayer);
        assertEquals(_paperPlayer, _underTest.play());

        // vice versa:
        _underTest = new Game(_rockPlayer, _paperPlayer);
        assertEquals(_paperPlayer, _underTest.play());

        // knowledge: Rock > Scissors
        _underTest = new Game(_rockPlayer, _scissorPlayer);
        assertEquals(_rockPlayer, _underTest.play());

        // vice versa:
        _underTest = new Game(_scissorPlayer, _rockPlayer);
        assertEquals(_rockPlayer, _underTest.play());

        // knowledge: Scissor > Paper
        _underTest = new Game(_paperPlayer, _scissorPlayer);
        assertEquals(_scissorPlayer, _underTest.play());

        // vice versa:
        _underTest = new Game(_scissorPlayer, _paperPlayer);
        assertEquals(_scissorPlayer, _underTest.play());

        // Tie-possibilities:
        _underTest = new Game(_paperPlayer, _paperPlayer);
        assertNull(_underTest.play());
        // Tie-possibilities:
        _underTest = new Game(_rockPlayer, _rockPlayer);
        assertNull(_underTest.play());
        // Tie-possibilities:
        _underTest = new Game(_scissorPlayer, _scissorPlayer);
        assertNull(_underTest.play());
    }