@Test
public void testBuildHeader01() throws Exception {

    // テスト対象のインスタンス化
    URL url = this.getClass().getResource(
            "AbstractFileLineIterator_buildHeader01.txt");
    String fileName = url.getPath();
    Map<String, ColumnParser> columnParserMap = new HashMap<String, ColumnParser>();
    columnParserMap.put("java.lang.String", new NullColumnParser());
    AbstractFileLineIteratorImpl02<AbstractFileLineIterator_Stub60> fileLineIterator = PowerMockito.spy(
            new AbstractFileLineIteratorImpl02<AbstractFileLineIterator_Stub60>(
            fileName, AbstractFileLineIterator_Stub60.class,
            columnParserMap));
    Method method = AbstractFileLineIterator.class.getDeclaredMethod("buildLineReader");
    method.setAccessible(true);
    method.invoke(fileLineIterator);
    LineReader mockLineReader = Mockito.mock(LineReader.class);
    Mockito.doReturn("").when(mockLineReader).readLine();
    ReflectionTestUtils.setField(fileLineIterator, "lineReader", mockLineReader);
    // 引数の設定
    // なし
    // 前提条件の設定
    // テスト対象のインスタンス化で設定済み
    // テスト実施
    method = AbstractFileLineIterator.class.getDeclaredMethod("buildHeader");
    method.setAccessible(true);
    method.invoke(fileLineIterator);
    // 返却値の確認
    // なし
    // 状態変化の確認
    Object header_object = ReflectionTestUtils.getField(fileLineIterator,
            "header");
    assertEquals(ArrayList.class, header_object.getClass());
    List<?> header = (List<?>) header_object;
    assertEquals(0, header.size());
    Mockito.verify(mockLineReader, Mockito.never()).readLine();
}