I am new to unit testing. I am testing a function that "tokenizes" a String
. The String
is a mathematical expression. Here is my code:
@Test
public void testTokenizer() throws InvalidExpressionException {
final String QUERY = "sin(x) / 5*x";
final String[] EXPECTED = {"x", "sin", "5", "x", "*", "/"};
parser.parse(QUERY);
final String[] actual = parser.getTokens().toArray(new String[parser.getTokens().size()]);
Assertions.assertEquals(EXPECTED, actual);
}
This is the error I get:
org.opentest4j.AssertionFailedError:
Expected :[Ljava.lang.String;@62043840
Actual :[Ljava.lang.String;@5315b42e
I am using junit5. It looks like those are memory addresses(I'm a beginner). Am I making the wrong assertion(comparing pointers or something)?