#pragma once #include #include #include "../xlnt.h" class NumberFormatTestSuite : public CxxTest::TestSuite { public: NumberFormatTestSuite() { } //void setup_class(cls) //{ // //cls.workbook = Workbook() // // cls.worksheet = Worksheet(cls.workbook, "Test") // // cls.sd = SharedDate() //} void test_convert_date_to_julian() { //TS_ASSERT_EQUALS(40167, sd.to_julian(2009, 12, 20)) } void test_convert_date_from_julian() { } //void test_date_equal(julian, datetime) //{ // //TS_ASSERT_EQUALS(sd.from_julian(julian), datetime); // //date_pairs = ( // // (40167, datetime(2009, 12, 20)), // // (21980, datetime(1960, 3, 5)), // // ); // //for count, dt in date_pairs // //{ // // yield test_date_equal, count, dt; // //} //} void test_convert_datetime_to_julian() { //TS_ASSERT_EQUALS(40167, sd.datetime_to_julian(datetime(2009, 12, 20))) // TS_ASSERT_EQUALS(40196.5939815, sd.datetime_to_julian(datetime(2010, 1, 18, 14, 15, 20, 1600))) } void test_insert_float() { //worksheet.cell("A1").value = 3.14 // TS_ASSERT_EQUALS(Cell.TYPE_NUMERIC, worksheet.cell("A1")._data_type) } void test_insert_percentage() { //worksheet.cell("A1").value = "3.14%" // TS_ASSERT_EQUALS(Cell.TYPE_NUMERIC, worksheet.cell("A1")._data_type) // assert_almost_equal(0.0314, worksheet.cell("A1").value) } void test_insert_datetime() { //worksheet.cell("A1").value = date.today() // TS_ASSERT_EQUALS(Cell.TYPE_NUMERIC, worksheet.cell("A1")._data_type) } void test_insert_date() { //worksheet.cell("A1").value = datetime.now() // TS_ASSERT_EQUALS(Cell.TYPE_NUMERIC, worksheet.cell("A1")._data_type) } void test_internal_date() { //dt = datetime(2010, 7, 13, 6, 37, 41) // worksheet.cell("A3").value = dt // TS_ASSERT_EQUALS(40372.27616898148, worksheet.cell("A3")._value) } void test_datetime_interpretation() { //dt = datetime(2010, 7, 13, 6, 37, 41) // worksheet.cell("A3").value = dt // TS_ASSERT_EQUALS(dt, worksheet.cell("A3").value) } void test_date_interpretation() { //dt = date(2010, 7, 13) // worksheet.cell("A3").value = dt // TS_ASSERT_EQUALS(datetime(2010, 7, 13, 0, 0), worksheet.cell("A3").value) } void test_number_format_style() { //worksheet.cell("A1").value = "12.6%" // TS_ASSERT_EQUALS(NumberFormat.FORMAT_PERCENTAGE, \ // worksheet.cell("A1").style.number_format.format_code) } void test_date_format_on_non_date() { //cell = worksheet.cell("A1"); } //void check_date_pair(count, date_string) //{ // //cell.value = strptime(date_string, "%Y-%m-%d"); // //TS_ASSERT_EQUALS(count, cell._value); // //date_pairs = ( // // (15, "1900-01-15"), // // (59, "1900-02-28"), // // (61, "1900-03-01"), // // (367, "1901-01-01"), // // (2958465, "9999-12-31"), ); // //for count, date_string in date_pairs // //{ // // yield check_date_pair, count, date_string; // //} //} void test_1900_leap_year() { //assert_raises(ValueError, sd.from_julian, 60) // assert_raises(ValueError, sd.to_julian, 1900, 2, 29) } void test_bad_date() { //void check_bad_date(year, month, day) //{ // assert_raises(ValueError, sd.to_julian, year, month, day) //} //bad_dates = ((1776, 7, 4), (1899, 12, 31), ) // for year, month, day in bad_dates // { // yield check_bad_date, year, month, day // } } void test_bad_julian_date() { //assert_raises(ValueError, sd.from_julian, -1) } void test_mac_date() { //sd.excel_base_date = CALENDAR_MAC_1904 // datetuple = (2011, 10, 31) // dt = date(datetuple[0], datetuple[1], datetuple[2]) // julian = sd.to_julian(datetuple[0], datetuple[1], datetuple[2]) // reverse = sd.from_julian(julian).date() // TS_ASSERT_EQUALS(dt, reverse) // sd.excel_base_date = CALENDAR_WINDOWS_1900 } };