package com.bitmonlab.osiris.api.map.managers.impl; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.runners.MockitoJUnitRunner; import com.bitmonlab.osiris.api.core.map.dao.api.FeatureRepository; import com.bitmonlab.osiris.api.core.map.exceptions.FeatureNotExistException; import com.bitmonlab.osiris.api.core.map.exceptions.MongoGeospatialException; import com.bitmonlab.osiris.api.core.map.managers.impl.FeatureManagerImpl; import com.bitmonlab.osiris.api.core.map.validations.ValidatorExistFeature; import com.bitmonlab.osiris.commons.map.model.geojson.Feature; @RunWith(MockitoJUnitRunner.class) public class FeatureManagerImplTest { @InjectMocks private FeatureManagerImpl featureManagerImpl; @Mock private Feature feature; @Mock private FeatureRepository featureRepository; @Mock private ValidatorExistFeature validatorExistFeature; @Test public void storeFeatureManagerTest() throws MongoGeospatialException{ String idApplication = "1"; //Fixture //Experimentation featureManagerImpl.storeFeature(idApplication, feature); //Expectations Mockito.verify(featureRepository).save(idApplication,feature); } @Test public void deleteFeatureManagerTest() throws FeatureNotExistException{ String idApplication = "9"; String idFeature = "1"; //Fixture //Experimentation featureManagerImpl.deleteFeature(idApplication, idFeature); //Expectations Mockito.verify(validatorExistFeature).checkFeatureExist(idApplication,idFeature); Mockito.verify(featureRepository).delete(idApplication,idFeature); } @Test public void updateFeatureManagerTest() throws FeatureNotExistException, MongoGeospatialException{ String idApplication = "9"; String idFeature = "1"; //Fixture //Experimentation featureManagerImpl.updateFeature(idApplication, idFeature, feature); //Expectation Mockito.verify(validatorExistFeature).checkFeatureExist(idApplication,idFeature); Mockito.verify(feature).setId(idFeature); Mockito.verify(featureRepository).save(idApplication,feature); } @Test public void getFeatureWithIDTest() throws FeatureNotExistException{ String idApplication = "9"; String idFeature = "1"; //Fixture //Experimentation featureManagerImpl.getFeatureByID(idApplication, idFeature); //Expectation Mockito.verify(validatorExistFeature).checkFeatureExist(idApplication, idFeature); Mockito.verify(featureRepository).findByApplicationIdentifierAndId(idApplication,idFeature); } }