blob: 45479a998bf656bdcfcd0ad637bdf821c8a34c29 [file] [log] [blame]
/*********************************************************************
* Copyright (c) 2008 The University of York.
*
* This program and the accompanying materials are made
* available under the terms of the Eclipse Public License 2.0
* which is available at https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
**********************************************************************/
package org.eclipse.epsilon.emc.spreadsheets;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import org.junit.Test;
public class SpreadsheetColumnTest {
@Test
public void testIsIdentifiablyByNull() {
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
assertTrue(!column.isIdentifiableBy(null));
}
@Test
public void testIsIdentifiablyByName() {
String name = "NAME";
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
column.setName(name);
assertTrue(column.isIdentifiableBy(name));
}
@Test
public void testIsIdentifiablyByNameNotEqual() {
String name = "NAME";
String alias = "NAMEa";
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
column.setName(name);
assertTrue(!column.isIdentifiableBy(alias));
}
@Test
public void testIsIdentifiablyByNameAliasIndex() {
String name = "NAME";
String alias = "NAMEa";
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
column.setName(name);
column.setAlias(alias);
assertTrue(column.isIdentifiableBy(name));
assertTrue(column.isIdentifiableBy(alias));
assertTrue(column.isIdentifiableBy(column.getPrefixedIndex()));
assertTrue(!column.isIdentifiableBy(column.getPrefixedIndex() + "2"));
}
@Test
public void testGetIdentifier() {
String name = "NAME";
String alias = "NAMEa";
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
column.setName(name);
assertTrue(column.getIdentifier().equals(name));
assertTrue(!column.getIdentifier().equals(name + "s"));
column.setName(null);
column.setAlias(alias);
assertTrue(column.getIdentifier().equals(alias));
assertTrue(!column.getIdentifier().equals(alias + "s"));
column.setAlias(null);
assertTrue(column.getIdentifier().equals(column.getPrefixedIndex()));
}
// @Test
// public void testIndexPrefixing()
// {
// SpreadsheetModel model = new ConcreteModel();
// SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET",
// true);
// SpreadsheetColumn column = new ConcreteColumn(worksheet, 1);
// assertTrue(column.isValidPrefixedIndex(column.getPrefixedIndex()));
// assertTrue(worksheet == column.getWorksheet());
// }
@Test
public void testWorksheetNull() {
try {
new ConcreteColumn(null, 1);
fail();
}
catch (IllegalArgumentException e) {
assert (true);
}
}
@Test
public void testNegativeColumnIndex() {
SpreadsheetModel model = new ConcreteModel();
SpreadsheetWorksheet worksheet = new ConcreteWorksheet(model, "WORKSHEET", true);
try {
new ConcreteColumn(worksheet, -1);
fail();
}
catch (IllegalArgumentException e) {
assert (true);
}
}
}