You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2009/03/12 04:29:30 UTC
svn commit: r752758 - in /lucene/lucy/trunk/charmonizer/src/Charmonizer:
Test.charm Test.harm
Author: marvin
Date: Thu Mar 12 03:29:30 2009
New Revision: 752758
URL: http://svn.apache.org/viewvc?rev=752758&view=rev
Log:
Change Charmonizer's tests to output TAP instead of an ad hoc custom format.
Modified:
lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.charm
lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.harm
Modified: lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.charm
URL: http://svn.apache.org/viewvc/lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.charm?rev=752758&r1=752757&r2=752758&view=diff
==============================================================================
--- lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.charm (original)
+++ lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.charm Thu Mar 12 03:29:30 2009
@@ -12,6 +12,12 @@
static void
TestBatch_run_test(TestBatch *batch);
+#define PRINT_SUPPLIED_MESS(_pattern, _args) \
+ va_start(args, pat); \
+ vprintf(pat, args); \
+ va_end(args); \
+ printf("\n");
+
void
chaz_Test_init(void) {
/* unbuffer stdout */
@@ -42,6 +48,12 @@
return batch;
}
+void
+chaz_Test_plan(TestBatch *batch)
+{
+ printf("1..%u\n", batch->num_tests);
+}
+
static void
TestBatch_destroy(TestBatch *batch)
{
@@ -53,18 +65,10 @@
TestBatch_run_test(TestBatch *batch)
{
/* print start */
- printf("===================================\n");
- printf("%s - %u tests to run\n", batch->name, batch->num_tests);
- printf("===================================\n");
+ PLAN(batch);
/* run the batch */
batch->test_func(batch);
-
- /* print report */
- printf("-------------------------\n");
- printf("Tests: %d\nPassed: %d\nFailed: %d\nSkipped: %d\n\n",
- batch->num_tests, batch->num_passed, batch->num_failed,
- batch->num_skipped);
}
void
@@ -77,19 +81,15 @@
/* test condition and pass or fail */
if (value) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: ", batch->test_num);
+ printf("not ok %u - ", batch->test_num);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
@@ -102,25 +102,20 @@
/* test condition and pass or fail */
if (value == 0) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: ", batch->test_num);
+ printf("not ok %u - ", batch->test_num);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
-
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
-chaz_Test_assert_str_eq(TestBatch *batch, const char *expected,
- const char *got, const char *pat, ...)
+chaz_Test_assert_str_eq(TestBatch *batch, const char *got,
+ const char *expected, const char *pat, ...)
{
va_list args;
@@ -129,26 +124,22 @@
/* test condition and pass or fail */
if (strcmp(expected, got) == 0) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: Expected '%s', got '%s'\n ", batch->test_num,
+ printf("not ok %u - Expected '%s', got '%s'\n ", batch->test_num,
expected, got);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
-chaz_Test_assert_str_neq(TestBatch *batch, const char *expected,
- const char *got, const char *pat, ...)
+chaz_Test_assert_str_neq(TestBatch *batch, const char *got,
+ const char *expected, const char *pat, ...)
{
va_list args;
@@ -157,20 +148,16 @@
/* test condition and pass or fail */
if (strcmp(expected, got) != 0) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: Expected '%s', got '%s'\n ", batch->test_num,
+ printf("not ok %u - Expected '%s', got '%s'\n ", batch->test_num,
expected, got);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
@@ -182,14 +169,10 @@
batch->test_num++;
/* indicate pass, update pass counter */
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
@@ -201,18 +184,14 @@
batch->test_num++;
/* indicate failure, update pass counter */
- printf("%-4u fail:\n", batch->test_num);
+ printf("not ok %u - ", batch->test_num);
batch->num_failed++;
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
-chaz_Test_assert_int_eq(TestBatch *batch, long expected, long got,
+chaz_Test_assert_int_eq(TestBatch *batch, long got, long expected,
const char *pat, ...)
{
va_list args;
@@ -221,25 +200,21 @@
batch->test_num++;
if (expected == got) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: Expected '%ld', got '%ld'\n ", batch->test_num,
+ printf("not ok %u - Expected '%ld', got '%ld'\n ", batch->test_num,
expected, got);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
-chaz_Test_assert_float_eq(TestBatch *batch, double expected,
- double got, const char *pat, ...)
+chaz_Test_assert_float_eq(TestBatch *batch, double got,
+ double expected, const char *pat, ...)
{
va_list args;
double diff = expected/got;
@@ -249,21 +224,16 @@
/* evaluate condition and pass or fail */
if (diff > 0.00001) {
- printf("%-4u pass: ", batch->test_num);
+ printf("ok %u - ", batch->test_num);
batch->num_passed++;
}
else {
- printf("%-4u fail: Expected '%f', got '%f'\n ", batch->test_num,
+ printf("not ok %u - Expected '%f', got '%f'\n ", batch->test_num,
expected, got);
batch->num_failed++;
}
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
-
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
@@ -275,14 +245,10 @@
batch->test_num++;
/* indicate that test is being skipped, update pass counter */
- printf("%-4d skip: ", batch->test_num);
+ printf("ok %u # SKIP ", batch->test_num);
batch->num_skipped++;
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ PRINT_SUPPLIED_MESS(pat, args);
}
void
@@ -292,14 +258,11 @@
unsigned remaining = batch->num_tests - batch->test_num;
/* indicate that tests are being skipped, update skip counter */
- batch->num_skipped += remaining;
- printf("Skipping all %u remaining tests: ", remaining);
-
- /* print supplied message */
- va_start(args, pat);
- vprintf(pat, args);
- va_end(args);
- printf("\n");
+ printf("# Skipping all %u remaining tests: ", remaining);
+ PRINT_SUPPLIED_MESS(pat, args);
+ while (batch->test_num < batch->num_tests) {
+ SKIP(batch, "");
+ }
}
/**
Modified: lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.harm
URL: http://svn.apache.org/viewvc/lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.harm?rev=752758&r1=752757&r2=752758&view=diff
==============================================================================
--- lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.harm (original)
+++ lucene/lucy/trunk/charmonizer/src/Charmonizer/Test.harm Thu Mar 12 03:29:30 2009
@@ -49,6 +49,7 @@
/* Note: maybe add line numbers later.
*/
+#define CHAZ_TEST_PLAN chaz_Test_plan
#define CHAZ_TEST_ASSERT_TRUE chaz_Test_assert_true
#define CHAZ_TEST_ASSERT_FALSE chaz_Test_assert_false
#define CHAZ_TEST_ASSERT_STR_EQ chaz_Test_assert_str_eq
@@ -72,6 +73,8 @@
return; \
} while (0)
+void
+chaz_Test_plan(chaz_TestBatch *batch);
void
chaz_Test_assert_true(chaz_TestBatch *batch, int expression,
@@ -82,12 +85,12 @@
const char *pat, ...);
void
-chaz_Test_assert_str_eq(chaz_TestBatch *batch, const char *expected,
- const char *got, const char *pat, ...);
+chaz_Test_assert_str_eq(chaz_TestBatch *batch, const char *got,
+ const char *expected, const char *pat, ...);
void
-chaz_Test_assert_str_neq(chaz_TestBatch *batch, const char *expected,
- const char *got, const char *pat, ...);
+chaz_Test_assert_str_neq(chaz_TestBatch *batch, const char *got,
+ const char *expected, const char *pat, ...);
void
chaz_Test_pass(chaz_TestBatch *batch, const char *pat, ...);
@@ -96,12 +99,12 @@
chaz_Test_fail(chaz_TestBatch *batch, const char *pat, ...);
void
-chaz_Test_assert_int_eq(chaz_TestBatch *batch, long expected, long got,
+chaz_Test_assert_int_eq(chaz_TestBatch *batch, long got, long expected,
const char *pat, ...);
void
-chaz_Test_assert_float_eq(chaz_TestBatch *batch, double expected,
- double got, const char *pat, ...);
+chaz_Test_assert_float_eq(chaz_TestBatch *batch, double got,
+ double expected, const char *pat, ...);
void
chaz_Test_skip(chaz_TestBatch *batch, const char *pat, ...);
@@ -117,6 +120,8 @@
#define TestBatch chaz_TestBatch
#define Test_init chaz_Test_init
#define Test_new_batch chaz_Test_new_batch
+ #define Test_plan chaz_Test_plan
+ #define PLAN CHAZ_TEST_PLAN
#define ASSERT_TRUE CHAZ_TEST_ASSERT_TRUE
#define ASSERT_FALSE CHAZ_TEST_ASSERT_FALSE
#define ASSERT_STR_EQ CHAZ_TEST_ASSERT_STR_EQ