<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hexe19 &#187; 未分類</title>
	<atom:link href="http://hexe19.net/category/%e6%9c%aa%e5%88%86%e9%a1%9e/feed/" rel="self" type="application/rss+xml" />
	<link>http://hexe19.net</link>
	<description>*scratch*</description>
	<lastBuildDate>Sat, 16 May 2009 03:54:11 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>make peperoncino</title>
		<link>http://hexe19.net/2008/04/11/41/make-peperoncino/</link>
		<comments>http://hexe19.net/2008/04/11/41/make-peperoncino/#comments</comments>
		<pubDate>Fri, 11 Apr 2008 10:55:17 +0000</pubDate>
		<dc:creator>you</dc:creator>
				<category><![CDATA[未分類]]></category>

		<guid isPermaLink="false">http://hexe19.net/?p=41</guid>
		<description><![CDATA[ペペロンチーノを作る。
使う Makefile の中身：
INSTALLDISH = /dish
PAN  = /tmp/fryingpan
POT  = /tmp/pot
CUP  = /tmp/cup

all : peperoncino

install :
	mv ${PAN}/* ${INSTALLDISH}

peperoncino : source boiled-pasta consomme.o
	split -d -b 100cc ${POT}/water.o water-
	mv ${POT}/water-00 > ${CUP}
	mv consomme.o ${CUP}
	rm ${POT}/water*
	find ${POT} -name "pasta-*" -exec mv {} ${PAN} \;
	fry -t 1m ${PAN}

source : garlic.o red-pepper.o olive-oil.o
	split -d -b 2 garlic.o garlic-
	mv  [...]]]></description>
			<content:encoded><![CDATA[<p>ペペロンチーノを作る。</p>
<p>使う Makefile の中身：</p>
<pre class="code">INSTALLDISH = /dish
PAN  = /tmp/fryingpan
POT  = /tmp/pot
CUP  = /tmp/cup

all : peperoncino

install :
	mv ${PAN}/* ${INSTALLDISH}

peperoncino : source boiled-pasta consomme.o
	split -d -b 100cc ${POT}/water.o water-
	mv ${POT}/water-00 > ${CUP}
	mv consomme.o ${CUP}
	rm ${POT}/water*
	find ${POT} -name "pasta-*" -exec mv {} ${PAN} \;
	fry -t 1m ${PAN}

source : garlic.o red-pepper.o olive-oil.o
	split -d -b 2 garlic.o garlic-
	mv   garlic-* ${FRYINGPAN}
	split -d -b 15 red-pepper.o red-pepper-
	mv   red-pepper-* ${FRYINGPAN}
	mv   olive-oil.o ${FRYINGPAN}
	fry  ${PAN}

boiled-pasta : water.o salt.o pasta.o
	mv water.o ${POT}
	boil  ${POT}
	split -d -b 150 pasta.o pasta-
	mv pasta-* ${POT}
	mv salt.o ${POT}
	sleep 6m

garlic.o :
	cat /dev/garlic > garlic.o

red-pepper.o :
	cat /dev/red-pepper > red-pepper.o

olive-oil.o :
	cat /dev/olive-oil > olive-oil.o

water.o :
	cat /dev/water > water.o

salt.o :
	cat /dev/salt > salt.o

pasta.o :
	cat /dev/pasta > pasta.o

consomme.o :
	cat /dev/consomme > consomme.o

clean :
	rm -R ${INSTALLDISH}/*
	rm -R ${PAN}/*
	rm -R ${POT}/*
</pre>
<p>作って食べる：</p>
<pre class="code">% ls
Makefile
% make
% make install
% eat /dish/*
</pre>
]]></content:encoded>
			<wfw:commentRss>http://hexe19.net/2008/04/11/41/make-peperoncino/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DUnit クイックスタート</title>
		<link>http://hexe19.net/2008/03/04/23/dunit-%e3%82%af%e3%82%a4%e3%83%83%e3%82%af%e3%82%b9%e3%82%bf%e3%83%bc%e3%83%88/</link>
		<comments>http://hexe19.net/2008/03/04/23/dunit-%e3%82%af%e3%82%a4%e3%83%83%e3%82%af%e3%82%b9%e3%82%bf%e3%83%bc%e3%83%88/#comments</comments>
		<pubDate>Tue, 04 Mar 2008 12:02:20 +0000</pubDate>
		<dc:creator>you</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[DUnit]]></category>

		<guid isPermaLink="false">http://hexe19.net/2008/03/04/23/</guid>
		<description><![CDATA[※昔の記事を復活（※2004/03/29頃の話を復活させた）
クイックスタート
DUnit がどんなものなのか、ここで少し体験してみます。
新しいプロジェクトを作成して、 1 + 1 = 2 となることを確かめるサンプルです。
※Delphi 7 を使って作業をしてます。

プロジェクトの作成
まず、Delphi を起動します。勝手に新しいプロジェクトができます。
いらないファイルを取り除く
Delphi を起動したときにいくつかのファイルが勝手に作成されます。この中のいらないファイルを取り除きます。
まず画面に出てきている Form1 を[×]ボタンを押して消します。
img/2-01-form1.png

Unit1.pas という Form1 の実体もいらないので右上の [×] ボタンを押して消します。
img/2-02-unit1.png

[Unit1.pas を保存しますか？] と聞いてきますが、もちろん保存しません。[いいえ]です。
ここまできたら一旦プロジェクトを保存します。[ファイル] &#8211; [すべて保存] を選びます。
img/2-03-file_all.png

プロジェクト名に Project1Test.dpr というような名前を付けて保存します。
DUnit のファイルをプロジェクトに追加
[プロジェクト] &#8211; [ソース表示] を選びます。
img/2-04-prj_src.png

出てきたウィンドウに DUnit のファイルを追加します。
img/2-05-prj_dpr.png

エクスプローラで dunit-7.2.0\src (ここでは C:\Tools\dunit-7.2.0\src) を開き、
TestFramework.pas と、GUITestRunner.pas をProject1Test.dpr ウィンドウにドラッグアンドドロップします。
img/2-06-prg_dpr_add.png

これで、DUnit のファイルは追加できました。
TestCase を追加
[ファイル] &#8211; [新規作成] &#8211; [ユニット] を選んで Unit1 を追加します。
Unit1 の初期状態
unit Unit1;

interface

implementation

end.

これを以下のように変更します。
Unit1 の変更後
unit Project1TestCases;
interface
uses
 TestFrameWork;

type
 TTestCaseFirst = [...]]]></description>
			<content:encoded><![CDATA[<p>※昔の記事を復活（※2004/03/29頃の話を復活させた）</p>
<h4>クイックスタート</h4>
<p>DUnit がどんなものなのか、ここで少し体験してみます。<br />
新しいプロジェクトを作成して、 1 + 1 = 2 となることを確かめるサンプルです。<br />
※Delphi 7 を使って作業をしてます。</p>
<p><span id="more-23"></span></p>
<h4>プロジェクトの作成</h4>
<p>まず、Delphi を起動します。勝手に新しいプロジェクトができます。</p>
<h4>いらないファイルを取り除く</h4>
<p>Delphi を起動したときにいくつかのファイルが勝手に作成されます。この中のいらないファイルを取り除きます。</p>
<p>まず画面に出てきている Form1 を[×]ボタンを押して消します。<br />
img/2-01-form1.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-01-form1.png' alt='FDelphi orm1' /></p>
<p>Unit1.pas という Form1 の実体もいらないので右上の [×] ボタンを押して消します。<br />
img/2-02-unit1.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-02-unit1.png' alt='Delphi Unit1' /><br />
[Unit1.pas を保存しますか？] と聞いてきますが、もちろん保存しません。[いいえ]です。</p>
<p>ここまできたら一旦プロジェクトを保存します。[ファイル] &#8211; [すべて保存] を選びます。<br />
img/2-03-file_all.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-03-file_all.png' alt='Delphi File Save All' /><br />
プロジェクト名に Project1Test.dpr というような名前を付けて保存します。</p>
<h4>DUnit のファイルをプロジェクトに追加</h4>
<p>[プロジェクト] &#8211; [ソース表示] を選びます。<br />
img/2-04-prj_src.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-04-prj_src.png' alt='Delphi Project Source' /></p>
<p>出てきたウィンドウに DUnit のファイルを追加します。<br />
img/2-05-prj_dpr.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-05-prj_dpr.png' alt='Delphi Project.dpr' /><br />
エクスプローラで dunit-7.2.0\src (ここでは C:\Tools\dunit-7.2.0\src) を開き、<br />
<strong>TestFramework.pas</strong> と、<strong>GUITestRunner.pas</strong> を<strong>Project1Test.dpr</strong> ウィンドウにドラッグアンドドロップします。</p>
<p>img/2-06-prg_dpr_add.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-06-prg_dpr_add.png' alt='DUnit GUITestRunner' /></p>
<p>これで、DUnit のファイルは追加できました。</p>
<h4>TestCase を追加</h4>
<p>[ファイル] &#8211; [新規作成] &#8211; [ユニット] を選んで Unit1 を追加します。<br />
<strong>Unit1 の初期状態</strong></p>
<pre class="code">unit Unit1;

interface

implementation

end.
</pre>
<p>これを以下のように変更します。</p>
<p><strong>Unit1 の変更後</strong></p>
<pre class="code">unit Project1TestCases;
interface
uses
 TestFrameWork;

type
 TTestCaseFirst = class(TTestCase)
 published
   procedure TestFirst;
 end;

implementation

procedure TTestCaseFirst.TestFirst;
begin
 Check(<strong>1 + 1 = 1</strong>, 'Oops!');
end;

initialization
 TestFramework.RegisterTest(TTestCaseFirst.Suite);
end.
</pre>
<p>※わざと1 + 1 = 1 というようにして、必ずテストが失敗するようにしてあります。</p>
<p>Unit1 を Project1TestCases.pas という名前で保存します。</p>
<h4>Project1Test.dpr を編集</h4>
<p>初期状態で以下のようになっている Project1Test.dpr を、</p>
<p><strong>Project1Test.dpr の変更前</strong></p>
<pre class="code">program Project1Test;

uses
  Forms,
  Project1TestCase in 'Project1TestCase.pas';

{$R *.res}

begin
  Application.Initialize;
  Application.Run;
end.
</pre>
<p>以下のように変更します。<br />
<strong>Project1Test.dpr の変更後</strong></p>
<pre class="code">
program Project1Test;
uses
 Forms,
 TestFrameWork,
 GUITestRunner,
 Project1TestCases in 'Project1TestCases.pas';

{$R *.RES}

begin
 Application.Initialize;
 GUITestRunner.RunRegisteredTests;
end.
</pre>
<h4>テストを失敗させる</h4>
<p>ここまでで、テストが実行できるようになっています。<br />
[実行] &#8211; [実行] を選択して、実行してみてください。</p>
<p>DUnit の ダイアログが表示されるはずです。<br />
img/2-08-dunit_dlg_def.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-08-dunit_dlg_def.png' alt='DUnit Dialog Default' /></p>
<p>実行ボタン（[Actions] &#8211; [Run] またはＦ９）を押すと、テストが実行されます。</p>
<p>1 + 1 の答えは 1 にはなりませんので、テストは失敗します。<br />
img/2-09_dunit_dlg_fail.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-09_dunit_dlg_fail.png' alt='DUnit Dialog Test Fail' /></p>
<p>この、テストが失敗することを確認するのは、すごく大事です。<br />
テストがちゃんと実行されていることを確認することができるからです。</p>
<h4>テストを成功させる</h4>
<p>今度は、1 + 1 の答えが 2 になるかをテストします。<br />
Project1TestCases.pas のを以下のように変更します。</p>
<p>変更前：</p>
<pre class="code">Check(1 + 1 = 1, 'Oops!');
</pre>
<p>変更後：</p>
<pre class="code">Check(1 + 1 = 2, 'Catastrophic arithmetic failure!');
</pre>
<p>これは、問題なくパスするはずです。<br />
img/2-10_dunit_dlg_pass.png<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-10_dunit_dlg_pass.png' alt='DUnit Dialog Test Pass' /></p>
<p>これが、DUnit の基本的な動きです。</p>
<h3>関連</h3>
<ul>
<li><a href="/2008/03/04/18/">DUnit インストール</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://hexe19.net/2008/03/04/23/dunit-%e3%82%af%e3%82%a4%e3%83%83%e3%82%af%e3%82%b9%e3%82%bf%e3%83%bc%e3%83%88/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DUnit インストール</title>
		<link>http://hexe19.net/2008/03/04/18/dunit-%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/</link>
		<comments>http://hexe19.net/2008/03/04/18/dunit-%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/#comments</comments>
		<pubDate>Tue, 04 Mar 2008 12:02:08 +0000</pubDate>
		<dc:creator>you</dc:creator>
				<category><![CDATA[未分類]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[DUnit]]></category>

		<guid isPermaLink="false">http://hexe19.net/2008/03/04/18/</guid>
		<description><![CDATA[※昔の記事を復活（※2004/03/29頃の話を復活させた）
DUnit とは、Delphi 用の xUnit です。
※Delphi4以降 or Kylix で使用できます。
DUnit にもいくつか種類があるみたいなんですけど、
一番使われていそうなのが今から紹介する DUnit です。（※2004/03/29頃の話）
ここでは、Windows 用の Delphi 7 Professional を使って説明をしていきます。

ダウンロード
http://dunit.sourceforge.net/ から DUnit (dunit-*.zip) をダウンロードします。
今現在のバージョンは 7.2 ですので、dunit-7.2.0.zipをダウンロードします。
（※2004/03/29頃の話）
インストール
DUnit は好きなトコロに解凍するだけでＯＫです。
例： C:\Tools\dunit-7.2.0
解凍したディレクトリの中には DUnit のソースコードが入っていますが、バイナリがあるのでコンパイル不要。
これから、DUnit を使うための設定をします。
ちなみに DUnit-7.2 にもセットアップについてのドキュメントがついているのですが、
残念なことに昔のバージョン（？）についての説明になっています。（※2004/03/29頃の話）
今の DUnit-7.2 とは説明中のディレクトリ構造とかも違います。
まず、Delphi を起動します。
[ツール] &#8211; [環境オプション] を選びます。

すると[環境オプション]ダイアログが出てくるので
[ライブラリパス] に dunit-7.2.0\src へのパスを追加して [OK] をクリックします。
例： C:\Tools\dunit-7.2.0\src;

[ライブラリパス] 変更前：
$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;$(DELPHI)\Rave5\Lib
[ライブラリパス] 変更後：
 C:\Tools\dunit-7.2.0\src;$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;$(DELPHI)\Rave5\Lib
次に、
[プロジェクト] &#8211; [オプション] を選びます。

出てきた[プロジェクトオプション] ダイアログの [ディレクトリ／条件] タブを選びます。
そこの [検索パス] に dunit-7.2.0\src へのパスを追加します。
例： C:\Tools\dunit-7.2.0\src
左下の [...]]]></description>
			<content:encoded><![CDATA[<p>※昔の記事を復活（※2004/03/29頃の話を復活させた）</p>
<p>DUnit とは、Delphi 用の xUnit です。<br />
※Delphi4以降 or Kylix で使用できます。</p>
<p>DUnit にもいくつか種類があるみたいなんですけど、<br />
一番使われていそうなのが今から紹介する DUnit です。（※2004/03/29頃の話）</p>
<p>ここでは、Windows 用の Delphi 7 Professional を使って説明をしていきます。</p>
<p><span id="more-18"></span></p>
<h4>ダウンロード</h4>
<p><a href="http://dunit.sourceforge.net/" target="_blank">http://dunit.sourceforge.net/</a> から <strong>DUnit (dunit-*.zip)</strong> をダウンロードします。</p>
<p>今現在のバージョンは 7.2 ですので、<strong>dunit-7.2.0.zip</strong>をダウンロードします。<br />
（※2004/03/29頃の話）</p>
<h4>インストール</h4>
<p>DUnit は好きなトコロに解凍するだけでＯＫです。<br />
例： C:\Tools\dunit-7.2.0</p>
<p>解凍したディレクトリの中には DUnit のソースコードが入っていますが、バイナリがあるのでコンパイル不要。</p>
<p>これから、DUnit を使うための設定をします。<br />
ちなみに DUnit-7.2 にもセットアップについてのドキュメントがついているのですが、<br />
残念なことに昔のバージョン（？）についての説明になっています。（※2004/03/29頃の話）<br />
今の DUnit-7.2 とは説明中のディレクトリ構造とかも違います。</p>
<p>まず、Delphi を起動します。</p>
<p>[ツール] &#8211; [環境オプション] を選びます。<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/01-tool_envopt.png' alt='Tool &gt; Env &gt; Opt' /></p>
<p>すると[環境オプション]ダイアログが出てくるので<br />
[ライブラリパス] に dunit-7.2.0\src へのパスを追加して [OK] をクリックします。<br />
例： C:\Tools\dunit-7.2.0\src;</p>
<p><img src='http://hexe19.net/wp/wp-content/uploads/2008/03/02-envopt_dlg.png' alt='Dialog' /></p>
<p>[ライブラリパス] 変更前：<br />
$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;$(DELPHI)\Rave5\Lib<br />
[ライブラリパス] 変更後：<br />
 C:\Tools\dunit-7.2.0\src;$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;$(DELPHI)\Rave5\Lib</p>
<p>次に、<br />
[プロジェクト] &#8211; [オプション] を選びます。<br />
<img src='http://hexe19.net/wp/wp-content/uploads/2008/03/03-prj_opt.png' alt='Project &gt; Option' /></p>
<p>出てきた[プロジェクトオプション] ダイアログの [ディレクトリ／条件] タブを選びます。</p>
<p>そこの [検索パス] に dunit-7.2.0\src へのパスを追加します。<br />
例： C:\Tools\dunit-7.2.0\src</p>
<p>左下の [デフォルト] にチェックを入れると、<br />
これから新規に作成するプロジェクトにこの設定が自動的に適用されて便利です。</p>
<p>[OK] を押す。</p>
<p><img src='http://hexe19.net/wp/wp-content/uploads/2008/03/04-prjopt_dlg.png' alt='Project Dialog' /></p>
<p>これで、インストール完了です。</p>
<p>※Delphi7 を起動したときに勝手に作られたプロジェクトは、<br />
保存せずに破棄してください。<br />
（保存してもいいですけど今回は設定するために Delphi を起動しただけなので…）</p>
<h3>関連</h3>
<ul>
<li><a href="/2008/03/04/23/">DUnit クイックスタート</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://hexe19.net/2008/03/04/18/dunit-%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
