プロジェクト

全般

プロフィール

バグ #2672

完了

齋藤さんからQNXのパッチが来たので当てる

n-ando さんが11年以上前に追加. 9年以上前に更新.

ステータス:
終了
優先度:
通常
担当者:
対象バージョン:
-
開始日:
2013/04/25
期日:
進捗率:

100%

予定工数:

説明

齋藤さんからQNXのパッチが来たので当てる

カワダロボティクスの齋藤です。

src/lib/rtm/testsの下のテストも実行した結果、次のようになりました。

Linuxでは
Manager, ManagerConfig, ManagerServant, ModuleManager, Outport,
PublisherNew, RTObject, RingBuffer, SdoConfiguration
がテストを通りませんでした。
QNXではこれらに加え、CORBA_IORUtil, ConfigAdmin, InPort, SystemLoggerがテストを通りませんでした。

Linuxはおそらく使用で来ているはずなので、QNXのみ失敗するテストが通るようにフィックスを行い、SystemLogger以外はテストが通るようになりました。
CORBA_IORUtil, InPortはNULL stringの出力時にsegmentation
faultで落ちるところがありましたので、パッチすることで対策しました。ConfigAdminは浮動小数点の等号比較をしていたところで失敗していたため、条件に合わせて不等号でテストするようにしました。

ただどうしてもSystemLoggerのチェックを通すことができません。失敗しているのはtest_setNameの中で、
rtclog.header(rtclog.RTL_DEBUG);
を実行した後の、
CPPUNIT_ASSERT_EQUAL(std::string(" DEBUG: : "), s0.str());
です。同じファンクション内で後に行っているテストでも失敗します。実際に返ってきているのは""です。RTC::Loggerの中のheader関数でLogStreamに代入されている内容を表示させると"
DEBUG: : "が入っていることはわかります。どなたかよい序言はありますでしょうか?

よろしくお願いします。


ファイル

qnx.patch.bz2 (6.33 KB) qnx.patch.bz2 n-ando, 2013/04/25 00:24

他の形式にエクスポート: Atom PDF