ASF Bugzilla – Attachment 5570 Details for
Bug 15303
[Patch] [RFE] cell.getCellValue(); cell.setCellValue();
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
JUnit Test for modification to 1.5.1 HSSFCell file.
TestHSSFCell.java (text/plain), 12.06 KB, created by
Donald Bell
on 2003-03-31 04:59:58 UTC
(
hide
)
Description:
JUnit Test for modification to 1.5.1 HSSFCell file.
Filename:
MIME Type:
Creator:
Donald Bell
Created:
2003-03-31 04:59:58 UTC
Size:
12.06 KB
patch
obsolete
>/* ==================================================================== > * The Apache Software License, Version 1.1 > * > * Copyright (c) 2002 The Apache Software Foundation. All rights > * reserved. > * > * Redistribution and use in source and binary forms, with or without > * modification, are permitted provided that the following conditions > * are met: > * > * 1. Redistributions of source code must retain the above copyright > * notice, this list of conditions and the following disclaimer. > * > * 2. Redistributions in binary form must reproduce the above copyright > * notice, this list of conditions and the following disclaimer in > * the documentation and/or other materials provided with the > * distribution. > * > * 3. The end-user documentation included with the redistribution, > * if any, must include the following acknowledgment: > * "This product includes software developed by the > * Apache Software Foundation (http://www.apache.org/)." > * Alternately, this acknowledgment may appear in the software itself, > * if and wherever such third-party acknowledgments normally appear. > * > * 4. The names "Apache" and "Apache Software Foundation" and > * "Apache POI" must not be used to endorse or promote products > * derived from this software without prior written permission. For > * written permission, please contact apache@apache.org. > * > * 5. Products derived from this software may not be called "Apache", > * "Apache POI", nor may "Apache" appear in their name, without > * prior written permission of the Apache Software Foundation. > * > * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED > * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES > * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE > * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR > * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF > * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND > * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, > * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT > * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF > * SUCH DAMAGE. > * ==================================================================== > * > * This software consists of voluntary contributions made by many > * individuals on behalf of the Apache Software Foundation. For more > * information on the Apache Software Foundation, please see > * <http://www.apache.org/>. > */ >package org.apache.poi.hssf.usermodel; > >import java.util.Calendar; >import java.util.Date; >import java.util.GregorianCalendar; >import java.util.Random; > >import org.apache.poi.hssf.model.Workbook; >import org.apache.poi.hssf.record.TestNumberFormatIndexRecord; > >import junit.framework.TestCase; > >/** > * This tests the HSSFCell to see if it is ok. > * > * @author <a href="mailto:donald@bell.name">Donald S. Bell</a> > */ >public class TestHSSFCell extends TestCase >{ > HSSFWorkbook a_workbook; > > /** > * Constructor for TestHSSFCell. > * > * @param arg0 > */ > public TestHSSFCell(String arg0) > { > super(arg0); > } > > /** > * This method returns a cell from a new > * workbook. > */ > private HSSFCell getNewCell() > { > // Declare the return value here so we > // have it. > HSSFCell cellRV = null; > > // Get a new workbook > HSSFWorkbook workbook = new HSSFWorkbook(); > > // Create a sheet in the workbook because > // by default a workbook doesn't have one. > HSSFSheet sheet = workbook.createSheet(); > > // Now get a new row. > HSSFRow row = sheet.createRow((short) 0); > > // Now get the new cell. > cellRV = row.createCell((short) 0); > > return cellRV; > } > > /** > * This makes sure an invalid "Excel date" returns null > * instead of the date. > */ > private void testInvalidDateValue(Date valueToTest) > { > // Get a new cell and see if we can > // just set it's value to a date > // and make sure we get that value > // back. > HSSFCell cell = getNewCell(); > > cell.setCellValue(valueToTest); > > Date returnedValue = cell.getDateCellValue(); > > if (returnedValue != null) > { > String message = "Did not return a null value. "; > message += " The returned value was " + returnedValue + "."; > fail(message); > } > } > > private void testGetBooleanValue(boolean valueToTest) > { > // Get a new cell and see if we can > // just set it's value to a boolean > // and make sure we get that value > // back. > HSSFCell cell = getNewCell(); > > cell.setCellValue(valueToTest); > > boolean returnedValue = cell.getBooleanCellValue(); > > if (valueToTest != returnedValue) > { > String message = "Did not return the expected boolean value. "; > message += "The expected return value was " + valueToTest; > message += " the returned value was " + returnedValue + "."; > fail(message); > } > } > > private void testGetDateValue(Date valueToTest) > { > // Get a new cell and see if we can > // just set it's value to a date > // and make sure we get that value > // back. > HSSFCell cell = getNewCell(); > > cell.setCellValue(valueToTest); > > Date returnedValue = cell.getDateCellValue(); > > if (valueToTest.equals(returnedValue) == false) > { > String message = "Did not return the expected date value. "; > message += "The expected return value was " + valueToTest; > message += " the returned value was " + returnedValue + "."; > fail(message); > } > } > > private void testGetNumericValue(double valueToTest) > { > // Get a new cell and see if we can > // just set it's value to a double > // and make sure we get that value > // back. > HSSFCell cell = getNewCell(); > > cell.setCellValue(valueToTest); > > double returnedValue = cell.getNumericCellValue(); > > if (valueToTest != returnedValue) > { > String message = "Did not return the expected numeric value. "; > message += "The expected return value was " + valueToTest; > message += " the returned value was " + returnedValue + "."; > fail(message); > } > } > > private void testGetStringValue(String valueToTest) > { > // Get a new cell and see if we can > // just set it's value to a String > // and make sure we get that value > // back. > HSSFCell cell = getNewCell(); > > cell.setCellValue(valueToTest); > > String returnedValue = cell.getStringCellValue(); > > if (valueToTest.equals(returnedValue) == false) > { > String message = "Did not return the expected String value. "; > message += "The expected return value was \"" + valueToTest + "\""; > message += " the returned value was \"" + returnedValue + "\"."; > fail(message); > } > } > > /** > * This tests that setting an cell value to a date > * that is not a valid Excel Date does not return > * this date object. > */ > public void testInvalidExcelDateCellValues() > { > // Just some interesting dates that are found on > // a calendar. > Calendar cal = Calendar.getInstance(); > > // Special Excel date because it is > // before 1900. > cal.set(1899, 11, 31, 23, 59); > testInvalidDateValue(cal.getTime()); > > // Some more invalid dates - this just tests > // the function some more. > > // US declares independance > cal.set(1776, 6, 4); > testInvalidDateValue(cal.getTime()); > } > > public void testGetNumericCellValue() > { > // We do a loop of ten random numbers > // this isn't completely scientific, but > // it pretty much checks to make sure we > // don't accidently hardcode something. > Random numberGenerator = new Random(); > for (int i = 0; i < 10; i++) > { > double randomNumber = numberGenerator.nextDouble(); > testGetNumericValue(randomNumber); > } > } > > /** > * This tests that a cell can be set to different > * date values and that that date value will be > * returned. > */ > public void testGetDateCellValue() > { > // Just some interesting dates that are found on > // a calendar. > Calendar cal = Calendar.getInstance(); > > // Just a cool date > cal.set(1976, 3, 13); > testGetDateValue(cal.getTime()); > > // Opening shoot of Iraqi Freedom > cal.set(2003, 2, 19); > testGetDateValue(cal.getTime()); > > // The first transcontinental demonstration of > // radio telephone occurred on this day > cal.set(1915, 8, 29); > testGetDateValue(cal.getTime()); > > // Ford Model A Production Begins > cal.set(1927, 10, 1, 8, 0); > testGetDateValue(cal.getTime()); > > > > // Special Excel Date > cal.set(1900, 1, 1); > testGetDateValue(cal.getTime()); > > // Another Special Excel dates > cal.set(1990, 1, 1, 0, 1); > testGetDateValue(cal.getTime()); > } > > public void testGetStringCellValue() > { > // Just do some random strings in the tests > // right now. > testGetStringValue(""); > testGetStringValue("The different apache projects are wonderful."); > testGetStringValue("Open source software helps developers"); > testGetStringValue("George Bush is cool!"); > testGetStringValue("George Bush is uncool!"); > testGetStringValue("Bill Clinton was a great president."); > testGetStringValue("Bill Clinton was a terrible president."); > testGetStringValue("I wish I could be president of the United States"); > testGetStringValue("I don't want to be the United States' president."); > testGetStringValue("My favorite state in Arkansas!"); > testGetStringValue("Pig Sooie"); > testGetStringValue("Go HOGS!!!!!!!!"); > testGetStringValue("God bless the Queen."); > testGetStringValue("War - what is it good for?"); > testGetStringValue("Peace"); > testGetStringValue("Speak softly, but carry a big stick."); > testGetStringValue("You can't be friends with everyone."); > testGetStringValue("MS Excel"); > testGetStringValue("MS"); > testGetStringValue("Java"); > } > > /** > * This tests that a cell can be set to false > * and that a false will be returned. > */ > public void testGetBooleanCellValueSetToFalse() > { > testGetBooleanValue(false); > } > > /** > * This tests that a cell can be set to true > * and that a true will be returned. > */ > public void testGetBooleanCellValueSetToTrue() > { > testGetBooleanValue(true); > } > > /* > * Test for void setCellValue(Date) > */ > public void testSetCellValueDate() > { > // Get a new cell and see if we can > // just set it's value to a date > // object. > HSSFCell cell = getNewCell(); > > cell.setCellValue(new Date()); > } > > /* > * Test for void setCellValue(null) > */ > public void testSetCellValueDateToNull() > { > // Get a new cell and see if we can > // just set it's value to a null > // date object. > HSSFCell cell = getNewCell(); > > Date nullDate = null; > > try > { > cell.setCellValue(nullDate); > > fail("A NullPointerException should have been thrown."); > } > catch (NullPointerException nfe) > { > // Expected. > } > } > > /* > * Test for void setCellValue(Calendar) > */ > public void testSetCellValueCalendar() > { > // Get a new cell and see if we can > // just set it's value to a calendar > // object. > HSSFCell cell = getNewCell(); > > cell.setCellValue(Calendar.getInstance()); > } > > /* > * Test for void setCellValue(Calendar) > */ > public void testSetCellValueCalendarToNull() > { > // Get a new cell and see if we can > // just set it's value to a null > // calendar object. > HSSFCell cell = getNewCell(); > > Calendar nullCalendar = null; > > try > { > cell.setCellValue(nullCalendar); > > fail("A NullPointerException should have been thrown."); > } > catch (NullPointerException nfe) > { > // Expected. > } > } > > /* > * Test for void setCellValue(double) > */ > public void testSetCellValueNumeric() > { > // Get a new cell and see if we can > // just set it's value to a double. > HSSFCell cell = getNewCell(); > > cell.setCellValue(2.342); > } > > /* > * Test for void setCellValue(String) > */ > public void testSetCellValueString() > { > // Get a new cell and see if we can > // just set it's value to a String. > HSSFCell cell = getNewCell(); > > cell.setCellValue("A nice little string"); > } >}
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 15303
:
5569
| 5570 |
6290
|
6291