Package com.asakusafw.runtime.value

Examples of com.asakusafw.runtime.value.DateOption


     * 日付の値を出力するテスト。
     * @throws Exception 例外が発生した場合
     */
    @Test
    public void emitDate() throws Exception {
        DateOption value = new DateOption();

        value.modify(date(2000, 2, 9));
        emitter.emit(value);
        value.modify(date(2000, 3, 1));
        emitter.emit(value);
        value.modify(date(100, 3, 30));
        emitter.emit(value);
        emitter.endRecord();

        value.setNull();
        emitter.emit(value);
        value.modify(date(1, 1, 1));
        emitter.emit(value);
        value.modify(date(9999, 12, 31));
        emitter.emit(value);
        emitter.endRecord();

        emitter.close();

        RecordParser parser = parser();
        assertThat(parser.next(), is(true));
        parser.fill(value);
        assertThat(value.get(), is(date(2000, 2, 9)));
        parser.fill(value);
        assertThat(value.get(), is(date(2000, 3, 1)));
        parser.fill(value);
        assertThat(value.get(), is(date(100, 3, 30)));

        assertThat(parser.next(), is(true));
        parser.fill(value);
        assertThat(value.isNull(), is(true));
        parser.fill(value);
        assertThat(value.get(), is(date(1, 1, 1)));
        parser.fill(value);
        assertThat(value.get(), is(date(9999, 12, 31)));

        assertThat(parser.next(), is(false));
    }
View Full Code Here


                    Timestamp ts = new Timestamp(cal.getTimeInMillis());
                    ps.setTimestamp(parameterIndex, ts);
                }
                break;
            case DATE:
                DateOption dateOption = (DateOption) vo;
                if (dateOption.isNull()) {
                    ps.setNull(parameterIndex, Types.DATE);
                } else {
                    Date date = dateOption.get();
                    Calendar cal = Calendar.getInstance();
                    int y = date.getYear();
                    int m = date.getMonth();
                    int d = date.getDay();
                    cal.clear();
View Full Code Here

                    dateTimeOption.modify(dt);
                }
                modelClass.getMethod(name, DateTimeOption.class).invoke(model, dateTimeOption);
                break;
            case DATE:
                DateOption dateOption = new DateOption();
                java.sql.Date sqlDate = rs.getDate(columnIndex);
                if (rs.wasNull()) {
                    dateOption.setNull();
                } else {
                    Calendar dateCal = Calendar.getInstance();
                    dateCal.setTime(sqlDate);
                    int y = dateCal.get(Calendar.YEAR);
                    int m = dateCal.get(Calendar.MONTH);
                    int d = dateCal.get(Calendar.DAY_OF_MONTH);
                    int days = DateUtil.getDayFromDate(y, m + 1, d);
                    dateOption.modify(days);
                }
                modelClass.getMethod(name, DateOption.class).invoke(model, dateOption);
                break;
            case DECIMAL:
                DecimalOption decimalOption = new DecimalOption();
View Full Code Here

        if (actualVal instanceof DateOption) {
            if (actualVal.isNull()) {
                fail(Type.NOT_IN_TEST_DAY, expect, actual, expectVal, actualVal, columnInfo);
                return;
            }
            DateOption dateOption = (DateOption) actualVal;
            Date date = dateOption.get();
            cal.clear();
            cal.set(date.getYear(), date.getMonth() - 1, date.getDay());
        } else if (actualVal instanceof DateTimeOption) {
            if (actualVal.isNull()) {
                fail(Type.NOT_IN_TEST_DAY, expect, actual, expectVal, actualVal, columnInfo);
View Full Code Here

        testField(list, "getCDatetimeOption", DATA.DATETIME_DATETIME_FIMT1, dateTimeOption);
        testField(list, "getCDatetimeOption", DATA.DATETIME_DATETIME_FIMT2, dateTimeOption);
        testField(list, "getCDatetimeOption", DATA.STRING_DATETIME, dateTimeOption);

        // C_DATEのテスト
        DateOption dateOption = new DateOption();
        dateOption.setNull();
        testField(list, "getCDateOption", DATA.NUMERIC_0, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_1, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_MINUS1, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_MAX, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_MIN, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_DECIMAL, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_OVER_MAX, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_UNDER_MIN, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_BIG_VALUE, dateOption);
        testField(list, "getCDateOption", DATA.STRING_0, dateOption);
        testField(list, "getCDateOption", DATA.STRING_1, dateOption);
        testField(list, "getCDateOption", DATA.STRING_MINUS1, dateOption);
        testField(list, "getCDateOption", DATA.STRING_MAX, dateOption);
        testField(list, "getCDateOption", DATA.STRING_MIN, dateOption);
        testField(list, "getCDateOption", DATA.STRING_DECIMAL, dateOption);
        testField(list, "getCDateOption", DATA.STRING_OVER_MAX, dateOption);
        testField(list, "getCDateOption", DATA.STRING_UNDER_MIN, dateOption);
        testField(list, "getCDateOption", DATA.STRING_BIG_VALUE, dateOption);
        testField(list, "getCDateOption", DATA.BLANK, dateOption);
        testField(list, "getCDateOption", DATA.NULL_STRING, dateOption);
        testField(list, "getCDateOption", DATA.BOOL_TRUE, dateOption);
        testField(list, "getCDateOption", DATA.BOOL_FALSE, dateOption);
        testField(list, "getCDateOption", DATA.NUMERIC_DATE, dateOption);
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testField(list, "getCDateOption", DATA.DATE_DATE_FMT1, dateOption);
        testField(list, "getCDateOption", DATA.DATE_DATE_FMT2, dateOption);
        testField(list, "getCDateOption", DATA.DATE_DATETIME_FIMT1, dateOption);
        testField(list, "getCDateOption", DATA.DATE_DATETIME_FIMT2, dateOption);
        testField(list, "getCDateOption", DATA.STRING_DATE, dateOption);
        dateOption.setNull();
        testField(list, "getCDateOption", DATA.NUMERIC_DATETIME, dateOption);
        testField(list, "getCDateOption", DATA.DATETIME_DATE_FMT1, dateOption);
        testField(list, "getCDateOption", DATA.DATETIME_DATE_FMT2, dateOption);
        testField(list, "getCDateOption", DATA.DATETIME_DATETIME_FIMT1, dateOption);
        testField(list, "getCDateOption", DATA.DATETIME_DATETIME_FIMT2, dateOption);
View Full Code Here

     * @param cell 対象のセル
     * @return 対応する値
     */
    private DateOption getDateOption(HSSFCell cell) {
        Date date = getDate(cell);
        DateOption op = new DateOption();
        if (date == null) {
            op.setNull();
        } else {
            Calendar cal = Calendar.getInstance();
            cal.setTime(date);
            int y = cal.get(Calendar.YEAR);
            int m = cal.get(Calendar.MONTH);
            int d = cal.get(Calendar.DAY_OF_MONTH);
            int h = cal.get(Calendar.HOUR_OF_DAY);
            int min = cal.get(Calendar.MINUTE);
            int s = cal.get(Calendar.SECOND);
            if (h != 0 || min != 0 || s != 0) {
                String msg = createExceptionMsg(cell, "時分秒が0でない値は日付型に変換できません");
                throw new CellTypeMismatchException(msg);
            }
            int days = com.asakusafw.runtime.value.DateUtil.getDayFromDate(y, m + 1, d);
            op.modify(days);
        }
        return op;
    }
View Full Code Here

        testGetXXXOptionDo(excelUtils, sheet, DATA.ERROR, TYPES.CHAR,  new CellTypeMismatchException("文字列"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.FORMULA, TYPES.CHAR, new CellTypeMismatchException("文字列"));

        // getDateOptionのテスト

        DateOption dateOption = new DateOption();

        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_0, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_1, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_MINUS1, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_DECIMAL, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_OVER_MAX, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_UNDER_MIN, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_BIG_VALUE, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_0, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_1, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_MINUS1, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_DECIMAL, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_OVER_MAX, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_UNDER_MIN, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_BIG_VALUE, TYPES.DATE, new CellTypeMismatchException("日付"));
        dateOption.setNull();
        testGetXXXOptionDo(excelUtils, sheet, DATA.BLANK, TYPES.DATE, dateOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NULL_STRING, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.BOOL_TRUE, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.BOOL_FALSE, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_DATE, TYPES.DATE, new CellTypeMismatchException("日付"));
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATE_FMT1, TYPES.DATE, dateOption);
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATE_FMT2, TYPES.DATE, dateOption);
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATETIME_FIMT1, TYPES.DATE, dateOption);
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATETIME_FIMT2, TYPES.DATE, dateOption);
        dateOption.modify(DateUtil.getDayFromDate(2010, 1, 1));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_DATE, TYPES.DATE, dateOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_DATETIME, TYPES.DATE, new CellTypeMismatchException("日付"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATETIME_DATE_FMT1, TYPES.DATE, new CellTypeMismatchException("時分秒が0でない値は日付型に変換できません"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATETIME_DATE_FMT2, TYPES.DATE, new CellTypeMismatchException("時分秒が0でない値は日付型に変換できません"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATETIME_DATETIME_FIMT1, TYPES.DATE, new CellTypeMismatchException("時分秒が0でない値は日付型に変換できません"));
View Full Code Here

TOP

Related Classes of com.asakusafw.runtime.value.DateOption

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.