Truth.assertThat(actual).matches(expected) or Truth.assertThat(actual).isEqualTo(expected) ?
The docs say that the matches() method takes in a String in the form of a regex but not sure if a string literal works as well? That's what got me confused.
It sounds like you want
isEqualTo(expected), which performs an exact equality assertion.As you say,
matchesaccepts a regex, which lets you do things likeassertThat("foo").matches("f.*"). But regexes can interfere with exact matching. For example,assertThat("$5").matches("$5")will fail because the$in the regex means "end of string." ButassertThat("$5").isEqualTo("$5")will pass.