/*
* Copyright 2017 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.
* You may obtain a copy of the License at
*
* 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.drools.workbench.screens.guided.dtable.client.widget.table.model.converters.column.impl;
import com.google.gwtmockito.GwtMockitoTestRunner;
import org.drools.workbench.models.guided.dtable.shared.model.BaseColumn;
import org.drools.workbench.models.guided.dtable.shared.model.DTCellValue52;
import org.drools.workbench.models.guided.dtable.shared.model.GuidedDecisionTable52;
import org.drools.workbench.models.guided.dtable.shared.model.MetadataCol52;
import org.drools.workbench.screens.guided.dtable.client.widget.table.GuidedDecisionTablePresenter;
import org.drools.workbench.screens.guided.dtable.client.widget.table.GuidedDecisionTableView;
import org.drools.workbench.screens.guided.dtable.client.widget.table.columns.PriorityListUiColumn;
import org.drools.workbench.screens.guided.dtable.client.widget.table.columns.StringUiColumn;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.uberfire.ext.wires.core.grids.client.model.GridColumn;
import static org.junit.Assert.*;
import static org.mockito.Mockito.*;
@RunWith(GwtMockitoTestRunner.class)
public class MetaDataColumnConverterTest {
private MetaDataColumnConverter metaDataColumnConverter;
@Before
public void setUp() throws
Exception {
metaDataColumnConverter = new MetaDataColumnConverter();
}
@Test
public void handles() throws
Exception {
assertTrue( metaDataColumnConverter.handles( new MetadataCol52() ) );
assertFalse( metaDataColumnConverter.handles( new MetaDataColumnConverterCantTouchThisBreakItDownStopHammerTime() ) );
}
@Test
public void convert() throws
Exception {
final MetadataCol52 metadataCol = new MetadataCol52();
metadataCol.setMetadata( "hello" );
final GridColumn<?> column = metaDataColumnConverter.convertColumn( metadataCol,
mock( GuidedDecisionTablePresenter.Access.class ),
mock( GuidedDecisionTableView.class ) );
assertTrue( column instanceof StringUiColumn );
}
@Test
public void convertRulePriorityColumn() throws
Exception {
final MetadataCol52 metadataCol = new MetadataCol52();
metadataCol.setMetadata( GuidedDecisionTable52.HitPolicy.RESOLVED_HIT_METADATA_NAME );
final GridColumn<?> column = metaDataColumnConverter.convertColumn( metadataCol,
mock( GuidedDecisionTablePresenter.Access.class ),
mock( GuidedDecisionTableView.class ) );
assertTrue( column instanceof PriorityListUiColumn );
}
private class MetaDataColumnConverterCantTouchThisBreakItDownStopHammerTime
implements BaseColumn {
@Override
public String getHeader() {
return null;
}
@Override
public void setHeader( final String header ) {
}
@Override
public boolean isHideColumn() {
return false;
}
@Override
public void setHideColumn( final boolean hideColumn ) {
}
@Override
public int getWidth() {
return 0;
}
@Override
public void setWidth( final int width ) {
}
@Override
public DTCellValue52 getDefaultValue() {
return null;
}
@Override
public void setDefaultValue( final DTCellValue52 defaultValue ) {
}
}
}