/*
* Copyright 2015 Red Hat, Inc. and/or its affiliates.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.guvnor.structure.backend.backcompat;
import java.util.ArrayList;
import java.util.List;
import org.guvnor.structure.backend.config.ConfigurationFactoryImpl;
import org.guvnor.structure.server.config.ConfigGroup;
import org.guvnor.structure.server.config.ConfigType;
import org.guvnor.structure.server.config.ConfigurationFactory;
import org.junit.Test;
import static org.junit.Assert.*;
public class BackwardCompatibleUtilTest {
@Test
public void backwardCompatibilityNullTest() {
final ConfigurationFactory factory = new ConfigurationFactoryImpl();
final BackwardCompatibleUtil backwardUtil = new BackwardCompatibleUtil( factory );
assertNull( backwardUtil.compat( null ) );
}
@Test
public void backwardCompatibilityNullSecurityRolesTest() {
final ConfigurationFactory factory = new ConfigurationFactoryImpl();
final BackwardCompatibleUtil backwardUtil = new BackwardCompatibleUtil( factory );
final ConfigGroup group = factory.newConfigGroup( ConfigType.PROJECT,
"cool",
"test" );
assertNotNull( backwardUtil.compat( group ) );
assertNotNull( backwardUtil.compat( group ).getConfigItem( "security:groups" ) );
}
@Test
public void backwardCompatibilityExistingSecurityRolesTest() {
final ConfigurationFactory factory = new ConfigurationFactoryImpl();
final BackwardCompatibleUtil backwardUtil = new BackwardCompatibleUtil( factory );
final ConfigGroup group = factory.newConfigGroup( ConfigType.PROJECT,
"cool2",
"test2" );
group.addConfigItem( factory.newConfigItem( "security:roles",
new ArrayList() {{
add( "group1" );
}} ) );
assertNotNull( backwardUtil.compat( group ).getConfigItem( "security:groups" ) );
assertEquals( 1,
( (List<String>) ( backwardUtil.compat( group ).getConfigItem( "security:groups" ) ).getValue() ).size() );
assertNull( backwardUtil.compat( group ).getConfigItem( "security:roles" ) );
}
@Test
public void backwardCompatibilityEmptySecurityRolesTest() {
final ConfigurationFactory factory = new ConfigurationFactoryImpl();
final BackwardCompatibleUtil backwardUtil = new BackwardCompatibleUtil( factory );
final ConfigGroup group = factory.newConfigGroup( ConfigType.PROJECT,
"cool3",
"test3" );
group.addConfigItem( factory.newConfigItem( "security:roles", new ArrayList() ) );
assertNotNull( backwardUtil.compat( group ).getConfigItem( "security:groups" ) );
assertEquals( 0,
( (List<String>) ( backwardUtil.compat( group ).getConfigItem( "security:groups" ) ).getValue() ).size() );
assertNull( backwardUtil.compat( group ).getConfigItem( "security:roles" ) );
}
}