Wandbox の利用

iuwandbox

Wandbox で iutest を使ったテストコードを書けるように対応しました。
様々なコンパイラー・バージョンでビルド・テストができるため、あなたのプログラムのコンパイラー対応を助けます。

使い方

tools/wandbox/iuwandbox.py を使用します。
iuwandbox は python で書かれていますので、python が利用可能な環境で実行してください。
実行は簡単です。ビルド・実行したいソースコードファイルを引数に渡すだけです。

例)
iuwandbox.py sample.cpp
ソースコードに特別な記述は必要ありません。
重要なのは iutest.hpp を include することです。このとき、iutest.hpp にパスが通っていなくても問題ありません。
#include "../../include/iutest.hpp"
#include <iostream>

int main(int argc, char** argv)
{
    int x = 0;
    std::cout << "hoge" << std::endl;
    
    IUTEST_INIT(&argc, argv);
    return IUTEST_RUN_ALL_TESTS();
}

IUTEST(Foo, Bar)
{
    IUTEST_ASSERT_EQ(1, abs(-1));
}
サンプルの実行結果はこちらになります。
http://melpon.org/wandbox/permlink/ASSmVgckBKb1HxFF

コンパイラーの選択などは後述のコマンドラインオプションの項をご覧ください。

コマンドラインオプション

-c,--compiler COMPILER コンパイラーを選択します。選択できるコンパイラーは Wandbox を確認するか、--list_compiler オプションで確認してください。デフォルト:[gcc-head]
-x,--options OPTIONS オプションを選択します。選択できるコンパイラーは Wandbox を確認するか、--list_options オプションで確認してください。デフォルト:[warning,gnu++11]
-f,--compiler_options_raw OPTIONSコンパイラーのオプションを直接指定します。複数のオプションを指定する場合は、[ -f"-Dx=hogefuga\n-O3" ] とするか、[ -f"-Dx=hogefuga" -f"-O3" ] のように複数オプションを記述してください。
-r,--runtime_options_raw OPTIONSビルドした実行ファイルのコマンドラインオプションを指定します。複数のオプションを指定する場合は、[ -r"--iutest_shuffle\n--iutest_random_seed=1" ] とするか、[ -r"--iutest_shuffle" -r"--iutest_random_seed=1" ] のように複数オプションを記述してください。
--list_compiler利用可能なコンパイラーを列挙します。
--list_options COMPILERCOMPILER で利用可能なオプションを列挙します。
--stdin 実行時の stdin の内容を指定します。
--encoding ENCODING入力ソースコードファイルのエンコードを指定します。
--expand_include入力ソースコードファイルに含まれる include を展開します。
-o, --output FILEソースコードを FILE に書き出します。
-s, --save permarnent link を生成します。
--permlink ID ID の permarnent link の情報を取得します。--output オプションを指定すると、ソースコードをファイルに書き出します。
-v,--version バージョンを表示します
-h,--help ヘルプを表示します

Copyright (c) 2011-2014, Takazumi-Shirayanagi, All rights reserved.