C言語

pcunit_mock.rbを使ってC言語用のモック(スタブ)を生成する(シンボル重複エラーも解決)

pcunit_mock.rbについて pcunit_mock.rbはPCUnitで使えるモック(スタブ)生成スクリプトです。pcunit_mock.rbの主な機能は以下のとおりです。 モックのソースを生成し、それをテストプロジェクトのビルドに追加することでモックが使用可能になる。 エクスペク…

PCUnit 1.7.0 リリース

PCUnit 1.7.0をリリースしました。 https://github.com/katono/PCUnit https://bitbucket.org/katono/pcunit 変更点は以下の通りです。 pcunit_mock.rbユーティリティでモック(スタブ)を生成できるようになった。 アサートマクロにPCU_ASSERT_MEMORY_EQUAL/P…

pcunit_template.rb用のGUIフロントエンドを作った

[twitter:@goyoki]さんからEclipseでPCUnitを使う場合は、ターミナルからではなくEclipseから直接pcunit_template.rbを実行できたらいいというご意見をいただきました。そこでpcunit_template.rb用のGUIフロントエンドを作ってみた。マルチプラットフォーム…

UMLの状態遷移図をC言語のStateパターンで実装&単体テストしてみる

UMLの状態遷移図(ステートマシン図/ステートチャート図)の実装 サンプルとして、こちらの図11を実装した。 http://labo.mamezou.com/special/sp_002/sp_002_003.html最上位の状態は「停止中」と「運転中」の2つの状態。「運転中」はコンポジット状態(入れ子…

わんくま同盟 名古屋勉強会 #20 に参加 & LTしてきました。

1/14にわんくま同盟 名古屋勉強会 #20 に参加 & LTしてきました。 TDDワークショップ お題はこちら http://www.tdd-net.jp/wankuma20-tdd-workshop-assignment.htmlC言語を選んだ人は4人。2組のペアを作った。 最初にもう一方のペアの方にPCUnitの使い方を簡…

PCUnit 1.5.0 リリース

PCUnit 1.5.0をリリースしました。 https://github.com/katono/PCUnit https://bitbucket.org/katono/pcunit 変更点は以下の通りです。 アサーション失敗で常にテスト関数から抜けるように修正。 _FATAL/_RETURNの付いたマクロを廃止。 追加メッセージ用アサ…

PCUnit 1.4.1 リリース

PCUnit 1.4.1をリリースしました。 https://github.com/katono/PCUnit https://bitbucket.org/katono/pcunit 変更点は以下の通りです。 PCU_ASSERT_EQUALで引数にsize_tよりビット幅の大きい整数型(long longなど)を指定した場合、正しい結果にならない場合…

PCUnit 1.4.0 リリース

PCUnit 1.4.0をリリースしました。 https://github.com/katono/PCUnit https://bitbucket.org/katono/pcunit 変更点は以下の通りです。 アサートマクロの引数が複数回評価されない仕様に変更。 各アサートマクロの戻り値をなしに変更。 PCU_last_assertion()…

Test-Driven Development for Embedded C の写経

Test-Driven Development for Embedded C の3、4章を実際に写経しながら動かしてみた。ただしせっかく作ったのでTDDツールはUnityではなくPCUnitを使った。ソースはこちら。 https://github.com/katono/TDD4EC cygwinで動作確認。動かす時はPCUnitをmake ins…

PCUnitでテスト関数を自動登録するスクリプトを作った

TDD Boot Camp 東京 1.6にて、C言語チームにユニットテスト ツールとしてPCUnitを使っていただいたそうです。お勧めしてくれた[twitter:@mayonezudaiou]さん、ありがとうございます! プログラマーとして自分が作ったものを使ってもらえるということは本当に…

ぼくのかんがえたさいきょうの組み込み用ユニットテストツール

TDDの勉強を始めたら、組み込み用のユニットテストツールを作りたくなってきた。C言語用のユニットテストツールはいろいろあるのでいくつか調べてみた。 CUnit。たぶんC言語のxUnitでは一番有名だと思う。アサートマクロが豊富。コンソールモードをTDDという…