Hamcrest - qual versão usar? 1.3 ou 2
Estou bastante confuso. Atualmente, estou testando meu aplicativo de primavera usando
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
Fiquei feliz desde que quisesse corresponder a RegularExpressions. No hamcrest 1.3, você precisa escrever seu próprio matcher, do qual eu não gostei muito. Eu procurei e descobri que o hamcrest 2.0 tem algo embutido, como:
assertThat(DateHelper.getActualDateForXML(), MatchesPattern.matchesPattern("\\d{4}+-\\d{2}-+\\d{2}+T\\d{2}+:\\d{2}+:\\d{2}+"));
Fiquei feliz, acrescentei:
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-junit</artifactId>
<version>2.0.0.0</version>
<scope>test</scope>
</dependency>
E expulsou as dependências 1.3 hamcrest do teste de inicialização da mola:
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-library</artifactId>
</exclusion>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
Agora tudo ainda está funcionando como eu espero que funcione, mas não me sinto muito confortável. Porque eu consigo encontrar pessoas escrevendo sobre 1.3 e realmente não consigo encontrar o uso do hamcrest-junit 2.0.
Alguém pode me explicar a conexão entre eles? Porque parece que o hamcrest-junit 2.0 tem tudo a partir do hamcrest 1.3 ...
Graças Ben