Package com.asakusafw.runtime.value

Examples of com.asakusafw.runtime.value.IntOption


     * @param cell 対象のセル
     * @return 対応する値
     */
    private IntOption getIntOption(HSSFCell cell) {
        Long l = getLong(cell);
        IntOption op = new IntOption();
        if (l == null) {
            op.setNull();
        } else {
            if (l < Integer.MIN_VALUE || Integer.MAX_VALUE < l) {
                String msg = createExceptionMsg(cell, "表現可能な範囲外の数値(" + l + ")");
                throw new NumberFormatException(msg);
            }
            op.modify(l.intValue());
        }
        return op;
    }
View Full Code Here


        testField(list, "getCBigintOption", DATA.DATETIME_DATETIME_FIMT1, longOption.setNull());
        testField(list, "getCBigintOption", DATA.DATETIME_DATETIME_FIMT2, longOption.setNull());
        testField(list, "getCBigintOption", DATA.STRING_DATETIME, longOption.setNull());

        // C_INTのテスト
        IntOption intOption = new IntOption();
        testField(list, "getCIntOption", DATA.NUMERIC_0, intOption.modify(0));
        testField(list, "getCIntOption", DATA.NUMERIC_1, intOption.modify(1));
        testField(list, "getCIntOption", DATA.NUMERIC_MINUS1, intOption.modify(-1));
        testField(list, "getCIntOption", DATA.NUMERIC_MAX, intOption.modify(Integer.MAX_VALUE));
        testField(list, "getCIntOption", DATA.NUMERIC_MIN, intOption.modify(Integer.MIN_VALUE));
        testField(list, "getCIntOption", DATA.NUMERIC_DECIMAL, intOption.setNull());
        testField(list, "getCIntOption", DATA.NUMERIC_OVER_MAX, intOption.setNull());
        testField(list, "getCIntOption", DATA.NUMERIC_UNDER_MIN, intOption.setNull());
        testField(list, "getCIntOption", DATA.NUMERIC_BIG_VALUE, intOption.setNull());
        testField(list, "getCIntOption", DATA.STRING_0, intOption.modify(0));
        testField(list, "getCIntOption", DATA.STRING_1, intOption.modify(1));
        testField(list, "getCIntOption", DATA.STRING_MINUS1, intOption.modify(-1));
        testField(list, "getCIntOption", DATA.STRING_MAX, intOption.modify(Integer.MAX_VALUE));
        testField(list, "getCIntOption", DATA.STRING_MIN, intOption.modify(Integer.MIN_VALUE));
        testField(list, "getCIntOption", DATA.STRING_DECIMAL, intOption.setNull());
        testField(list, "getCIntOption", DATA.STRING_OVER_MAX, intOption.setNull());
        testField(list, "getCIntOption", DATA.STRING_UNDER_MIN, intOption.setNull());
        testField(list, "getCIntOption", DATA.STRING_BIG_VALUE, intOption.setNull());
        testField(list, "getCIntOption", DATA.BLANK, intOption.setNull());
        testField(list, "getCIntOption", DATA.NULL_STRING, intOption.setNull());
        testField(list, "getCIntOption", DATA.BOOL_TRUE, intOption.modify(1));
        testField(list, "getCIntOption", DATA.BOOL_FALSE, intOption.modify(0));
        testField(list, "getCIntOption", DATA.NUMERIC_DATE, intOption.modify(40179));
        testField(list, "getCIntOption", DATA.DATE_DATE_FMT1, intOption.modify(40179));
        testField(list, "getCIntOption", DATA.DATE_DATE_FMT2, intOption.modify(40179));
        testField(list, "getCIntOption", DATA.DATE_DATETIME_FIMT1, intOption.modify(40179));
        testField(list, "getCIntOption", DATA.DATE_DATETIME_FIMT2, intOption.modify(40179));
        testField(list, "getCIntOption", DATA.STRING_DATE, intOption.setNull());
        testField(list, "getCIntOption", DATA.NUMERIC_DATETIME, intOption.setNull());
        testField(list, "getCIntOption", DATA.DATETIME_DATE_FMT1, intOption.setNull());
        testField(list, "getCIntOption", DATA.DATETIME_DATE_FMT2, intOption.setNull());
        testField(list, "getCIntOption", DATA.DATETIME_DATETIME_FIMT1, intOption.setNull());
        testField(list, "getCIntOption", DATA.DATETIME_DATETIME_FIMT2, intOption.setNull());
        testField(list, "getCIntOption", DATA.STRING_DATETIME, intOption.setNull());

        // C_SMALLINTのテスト
        ShortOption shortOption = new ShortOption();
        testField(list, "getCSmallintOption", DATA.NUMERIC_0, shortOption.modify((short) 0));
        testField(list, "getCSmallintOption", DATA.NUMERIC_1, shortOption.modify((short) 1));
View Full Code Here

        testGetXXXOptionDo(excelUtils, sheet, DATA.ERROR, TYPES.BIGINT,  new CellTypeMismatchException("数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.FORMULA, TYPES.BIGINT, new CellTypeMismatchException("数値"));

        // getIntOptionのテスト

        IntOption intOption = new IntOption();
        intOption.modify(0);
        testGetXXXOptionDo(excelUtils, sheet,  DATA.NUMERIC_0, TYPES.INT, intOption);
        intOption.modify(1);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_1, TYPES.INT, intOption);
        intOption.modify(-1);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_MINUS1, TYPES.INT, intOption);
        intOption.modify(Integer.MAX_VALUE);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_MAX, TYPES.INT, intOption);
        intOption.modify(Integer.MIN_VALUE);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_MIN, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_DECIMAL, TYPES.INT, new NumberFormatException("小数部を持つ数値を整数型に変換できません"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_OVER_MAX, TYPES.INT, new NumberFormatException("表現可能な範囲外の数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_UNDER_MIN, TYPES.INT, new NumberFormatException("表現可能な範囲外の数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_BIG_VALUE, TYPES.INT, new NumberFormatException("表現可能な範囲外の数値"));
        intOption.modify(0);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_0, TYPES.INT, intOption);
        intOption.modify(1);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_1, TYPES.INT, intOption);
        intOption.modify(-1);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_MINUS1, TYPES.INT, intOption);
        intOption.modify(Integer.MAX_VALUE);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_MAX, TYPES.INT, intOption);
        intOption.modify(Integer.MIN_VALUE);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_MIN, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_DECIMAL, TYPES.INT, new CellTypeMismatchException("数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_OVER_MAX, TYPES.INT, new NumberFormatException("表現可能な範囲外の数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_UNDER_MIN, TYPES.INT, new NumberFormatException("表現可能な範囲外の数値"));
        testGetXXXOptionDo(excelUtils, sheet, DATA.STRING_BIG_VALUE, TYPES.INT, new CellTypeMismatchException("数値"));
        intOption.setNull();
        testGetXXXOptionDo(excelUtils, sheet, DATA.BLANK, TYPES.INT, intOption);
        longOption.setNull();
        testGetXXXOptionDo(excelUtils, sheet, DATA.NULL_STRING, TYPES.INT, new CellTypeMismatchException("数値"));
        intOption.modify(1);
        testGetXXXOptionDo(excelUtils, sheet, DATA.BOOL_TRUE, TYPES.INT, intOption);
        intOption.modify(0);
        testGetXXXOptionDo(excelUtils, sheet, DATA.BOOL_FALSE, TYPES.INT, intOption);
        intOption.modify(40179);
        testGetXXXOptionDo(excelUtils, sheet, DATA.NUMERIC_DATE, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATE_FMT1, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATE_FMT2, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATETIME_FIMT1, TYPES.INT, intOption);
        testGetXXXOptionDo(excelUtils, sheet, DATA.DATE_DATETIME_FIMT2, TYPES.INT, intOption);
View Full Code Here

        }
    }

    private void checlValues(List<Ex1> results, int value) {
        for (Ex1 ex1 : results) {
            assertThat(ex1.getValueOption(), is(new IntOption(value)));
        }
    }
View Full Code Here

TOP

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

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.