public void testDriveCloned() { CloudSigma2Api api = EasyMock.createMock(CloudSigma2Api.class); for (DriveStatus status : DriveStatus.values()) { expect(api.getDriveInfo(status.name())).andReturn(mockDrive(status)); } replay(api); DriveClonedPredicate predicate = new DriveClonedPredicate(api); assertFalse(predicate.apply(mockDrive(DriveStatus.COPYING))); assertFalse(predicate.apply(mockDrive(DriveStatus.UNAVAILABLE))); assertTrue(predicate.apply(mockDrive(DriveStatus.MOUNTED))); assertTrue(predicate.apply(mockDrive(DriveStatus.UNMOUNTED))); verify(api); }