Edgaras Karka
Edgaras Karka

Reputation: 7852

Java Mockito how to set new value for property

I have Filter mock object and pass it to testing method. It method change Filter meta property value. But in my test I get old value.

org.junit.ComparisonFailure: expected:item[28140f6f5a] but was:item[3abf441213] at org.junit.Assert.assertEquals(Assert.java:115) ...

@Test
public void testMetaValue() throws Exception{
    when(f.getMetaData("last")).thenReturn("item3abf441213");

    WebUK at = new WebUK();
    at.setCollectingService(new TestCollectingServiceImpl());

    Set<Ad> ads = at.getNewAds(f);
    assertEquals(1, ads.size());
    assertEquals("item28140f6f5a",f.getMetaData("last"));
} 

Object for test:

public Set<Ad> getNewAds(Filter filter) throws Exception {
        ...
        filter.setMetaData("last", ul.get(0).attr("id"));
        ...
}

Upvotes: 1

Views: 1143

Answers (1)

fgb
fgb

Reputation: 18569

You can check that the set method was called with a verification:

verify(f).setMetaData("last", "item28140f6f5a");

Upvotes: 1

Related Questions