Robiac testy w JUnit4 musze sprawdzic czy funkcja poprawnie sortuje elementy. Tworze sobie dwa obiekty klasy Customer, ktore implementuja interfejs Comparable. Customer ma wlasna metode do porownywania, ale to teraz mniej istotne. Wykorzystalem tutaj EasyMock.

		expect(customerMock.compareTo(customerMock2)).andReturn(1);
		expectLastCall().anyTimes();
		replay(customerMock);

		expect(customerMock2.compareTo(customerMock)).andReturn(-1);
		expectLastCall().anyTimes();
		replay(customerMock2);
		
		List<ICustomer> myList = new ArrayList<ICustomer>();
		myList.add(customerMock);
		myList.add(customerMock2);

		((Shop) Shop.getInstance()).addCustomer(customerMock);
		((Shop) Shop.getInstance()).addCustomer(customerMock2);

		assertEquals(myList, Shop.getInstance().getSortedCustomers());

Po wywolaniu testu dostaje info

java.lang.AssertionError: Unexpected method call compareTo

Najwyrazniej występuje jeszcze jakies porownanie spoza: customerMock.compareTo(customerMock2) i customerMock2.compareTo(customerMock). O jakie porownanie chodzi? Jak to znalezc? Z gory dzieki za pomoc!