java - why my unit test failing after adding a parameter? -


here code when working fine

verify(loginservice).getuser(eq(loginname)); 

here failing..

@test public void test_getuserflow4() {     ...     loginmodel loginmodelreturned = loginservice.getuser(loginname, null);     assertgeneralconditions(loginmodelreturned);     ... }  private void assertgeneralconditions(loginmodel loginmodelreturned){     verify(loginservice).getuser(eq(loginname), null);  //test failed here other lines not executed     ....     .... } 

here getuser method

public loginmodel getuser(string loginname, string useragent) {     // useragent not being used anywhere     ....     return model; } 

exact error:

org.mockito.exceptions.misusing.invaliduseofmatchersexception:  invalid use of argument matchers! 2 matchers expected, 1 recorded: 

if you're using argument matches, need use them all arguments. fix test, can use:

verify(loginservice).getuser(eq(loginname), matchers.<string>eq(null)); 

or:

verify(loginservice).getuser(eq(loginname), (string) isnull()); 

or personally, i'd clarify having useragent variable value of null:

string useragent = null; verify(loginservice).getuser(eq(loginname), eq(useragent)); 

Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -