@Test
public void testReadMessageFromDataSource04() throws Exception {

    // 前処理
    DataSourceMessageSource_DataSourceMessageSourceStub02 ds = new DataSourceMessageSource_DataSourceMessageSourceStub02();
    DataSourceMessageSource_DBMessageResoueceDAOStub01 dbmr = new DataSourceMessageSource_DBMessageResoueceDAOStub01();
    Properties prop = new Properties();
    Map<Locale, MessageFormat> map = new HashMap<Locale, MessageFormat>();
    ds.cachedMergedProperties.put(Locale.JAPAN, prop);
    ds.cachedMessageFormats.put("foo", map);
    ds.dbMessageResourceDAO = dbmr;
    List<DBMessage> list = new ArrayList<DBMessage>();
    DBMessage db1 = new DBMessage("", "", "", "", "");
    list.add(db1);
    dbmr.list = list;
    // テスト実施
    ds.readMessagesFromDataSource();
    // 判定
    assertTrue(ds.cachedMergedProperties.isEmpty());
    assertTrue(ds.cachedMessageFormats.isEmpty());
    assertTrue(dbmr.isRead);
    assertEquals(1, ds.list.size());
    assertSame(db1, ds.list.get(0));
}