ssertThat(T!, Matcher<in T!>!) where T cannot be inferred for fun <T : Any!> assertThat(actual: T!, matcher: Matcher<in T!>!): Unit defined in org.hamcrest.MatcherAssert assertThat(String!, Boolean code example

Example 1: error: The method assertThat(T, Matcher) in the type MatcherAssert is not applicable for the arguments (List, Matcher>)

assertThat("test", anyOf(is("testing"), containsString("est")));

Example 2: error: The method assertThat(T, Matcher) in the type MatcherAssert is not applicable for the arguments (List, Matcher>)

import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
import static org.hamcrest.Matchers.equalTo;

boolean a;
boolean b;

// all statements test the same
assertThat(a, equalTo(b));
assertThat(a, is(equalTo(b)));
assertThat(a, is(b));

Example 3: error: The method assertThat(T, Matcher) in the type MatcherAssert is not applicable for the arguments (List, Matcher>)

assertTrue(result instanceof String);
// error message:
java.lang.AssertionError
    at org.junit.Assert.fail(Assert.java:86)
    at org.junit.Assert.assertTrue(Assert.java:41)
    at org.junit.Assert.assertTrue(Assert.java:52)
// ...


assertEquals(String.class, result.getClass());
// error message:
java.lang.NullPointerException
    at com.vogella.hamcrest.HamcrestTest.test(HamcrestTest.java:30)
// ....


assertThat(result, instanceOf(String.class));
// error message:
java.lang.AssertionError:
Expected: an instance of java.lang.String
     but: null
    at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:20)
    at org.hamcrest.MatcherAssert.assertThat(MatcherAssert.java:8)
// ...