...
Code Block |
---|
protected Object getVariableValueFromObject( Object mojoobject, String variable ) throws IllegalAccessException protected Map getVariablesAndValuesFromObject( Object mojoobject ) throws IllegalAccessException |
...
For example if I needed to check the value of the groupId in the project instance in a given mojo this is what I would do.
Code Block |
---|
// get the project variable MavenProject project = (MavenProject)getVariableValueFromObject( mojo, "project" ); // get the groupId from inside the project String groupId = (String)getVariableFromObject( project, "groupId" ); // assert assertEquals("foo", groupId); |
things to watch out for
I have noticed that since the declaration of the patchs are not directly in the same location as the verification (one being with the plugin configuration and the other in the assert clauses) that it is very easy to get them mixed up. And if you are validating that the file doesn't exist at the end of the operation as with the clean plugin, if you are not testing the absolute right thing then your assert will be working when the test itself might have failed. So make sure you check these conditions, perhaps even asserting something is there before the mojo execution and then asserting it isn't there at the end.