use of org.ff4j.core.Feature in project ff4j by ff4j.
the class FeatureStoreJCacheTest method testReadAllFeatures.
/**
* TDD.
*/
@Test
public void testReadAllFeatures() {
// Given
assertFf4j.assertThatFeatureExist(F4);
assertFf4j.assertThatStoreHasSize(EXPECTED_FEATURES_NUMBERS);
// When
Map<String, Feature> features = testedStore.readAll();
// Then
Assert.assertEquals(EXPECTED_FEATURES_NUMBERS, features.size());
// Then testing whole structure
Feature f = features.get(F4);
Assert.assertEquals(F4 + " does not exist", f.getUid(), F4);
Assert.assertTrue("no description", f.getDescription() != null && !"".equals(f.getDescription()));
Assert.assertTrue("no authorizations", f.getPermissions() != null && !f.getPermissions().isEmpty());
assertFf4j.assertThatFeatureHasRole(F4, ROLE_ADMIN);
assertFf4j.assertThatFeatureIsInGroup(F4, G1);
}
use of org.ff4j.core.Feature in project ff4j by ff4j.
the class FeatureStoreJCacheTest method testDeleteFeature.
/**
* TDD.
*/
@Test
public void testDeleteFeature() throws Exception {
// Given
assertFf4j.assertThatFeatureExist(F1);
Feature tmpf1 = testedStore.read(F1);
int initialNumber = testedStore.readAll().size();
// When
testedStore.delete(F1);
// Then
assertFf4j.assertThatStoreHasSize(initialNumber - 1);
assertFf4j.assertThatFeatureDoesNotExist(F1);
// End, Reinit initial state
testedStore.create(tmpf1);
assertFf4j.assertThatFeatureExist(F1);
}
use of org.ff4j.core.Feature in project ff4j by ff4j.
the class FeatureStoreJCacheTest method testUpdateFeatureMoreAutorisation.
/**
* TDD.
*/
@Test
public void testUpdateFeatureMoreAutorisation() {
// Parameters
Set<String> rights2 = new HashSet<String>(Arrays.asList(new String[] { ROLE_USER, ROLE_ADMIN }));
// Given
assertFf4j.assertThatFeatureExist(F1);
assertFf4j.assertThatFeatureHasNotRole(F1, ROLE_ADMIN);
// When
Feature fpBis = testedStore.read(F1);
fpBis.setPermissions(rights2);
testedStore.update(fpBis);
// Then
assertFf4j.assertThatFeatureHasRole(F1, ROLE_USER);
assertFf4j.assertThatFeatureHasRole(F1, ROLE_ADMIN);
}
use of org.ff4j.core.Feature in project ff4j by ff4j.
the class FeatureStoreJCacheTest method testUpdateFlipMoreAutorisationNotExist.
/**
* TDD.
*/
@Test
public void testUpdateFlipMoreAutorisationNotExist() {
// Given
assertFf4j.assertThatFeatureHasNotRole(F1, ROLE_NEW);
Set<String> rights2 = new HashSet<String>(Arrays.asList(new String[] { ROLE_USER, ROLE_NEW }));
Feature fpBis = new Feature(F1, false, G1, "desci2", rights2);
// When
testedStore.update(fpBis);
// Then
assertFf4j.assertThatFeatureHasRole(F1, ROLE_USER);
assertFf4j.assertThatFeatureHasRole(F1, ROLE_NEW);
}
use of org.ff4j.core.Feature in project ff4j by ff4j.
the class FeatureStoreJCacheTest method testUpdateRemoveProperty.
/**
* TDD.
*/
@Test
public void testUpdateRemoveProperty() {
// Given
assertFf4j.assertThatFeatureExist(F1);
// assertFf4j.assertThatFeatureHasProperty(F1, "ppint");
// When
Feature myFeature = ff4j.getFeatureStore().read(F1);
myFeature.getCustomProperties().remove("ppint");
testedStore.update(myFeature);
// Then
assertFf4j.assertThatFeatureHasNotProperty(F1, "p1");
}
Aggregations