Add test suite for `gargoyle_from_bool`

This commit is contained in:
Nick Chambers 2022-07-02 21:59:46 -05:00
parent 5c2ef82a9e
commit ecc61e1af3
4 changed files with 565 additions and 2 deletions

View File

@ -3,7 +3,7 @@ LDFLAGS ?= -g -O1
LIB_CFLAGS ?= -fpic
LIB_LDFLAGS ?= -shared
GARGOYLE_OBJS := delusion gargoyle scribe sleuth twine
GARGOYLE_TEST_OBJS := runner sleuth twine
GARGOYLE_TEST_OBJS := runner scribe sleuth twine
#GARGOYLE_TEST_OBJS := runner $(GARGOYLE_OBJS)
.PHONY: all gargoyle init docs test clean

View File

@ -0,0 +1,9 @@
#ifndef __GARGOYLE_TEST_SCRIBE_H_
#define __GARGOYLE_TEST_SCRIBE_H_
int init_suite_scribe(void);
int clean_suite_scribe(void);
void scribe_test_from_bool(void);
void scribe_test_from_rope(void);
#endif

View File

@ -9,6 +9,12 @@ int main() {
return CU_get_error();
}
CU_TestInfo scribe_tests[] = {
{ "gargoyle_from_bool", scribe_test_from_bool },
{ "gargoyle_from_rope", scribe_test_from_rope },
CU_TEST_INFO_NULL
};
CU_TestInfo sleuth_tests[] = {
{ "gargoyle_find_brand", sleuth_test_find_brand },
{ "gargoyle_find_emblem", sleuth_test_find_emblem },
@ -26,7 +32,7 @@ int main() {
CU_SuiteInfo suites[] = {
// { "delusion", init_suite_delusion, clean_suite_delusion, NULL, NULL, delusion_tests },
// { "gargoyle", init_suite_gargoyle, clean_suite_gargoyle, NULL, NULL, gargoyle_tests },
// { "scribe", init_suite_scribe, clean_suite_scribe, NULL, NULL, scribe_tests },
{ "scribe", init_suite_scribe, clean_suite_scribe, NULL, NULL, scribe_tests },
{ "sleuth", init_suite_sleuth, clean_suite_sleuth, NULL, NULL, sleuth_tests },
{ "twine", init_suite_twine, clean_suite_twine, NULL, NULL, twine_tests },
CU_SUITE_INFO_NULL,

548
test/scribe.c Normal file
View File

@ -0,0 +1,548 @@
#include <CUnit/Basic.h>
#include <gargoyle/test/scribe.h>
#include <gargoyle/scribe.h>
int init_suite_scribe(void) {
return CUE_SUCCESS;
}
int clean_suite_scribe(void) {
return CUE_SUCCESS;
}
void scribe_test_from_bool(void) {
uint8_t foo = 0;
struct gargoyle_opt opts[] = {
{ GARGOYLE_EZ_OPT("foo", foo), GARGOYLE_TYPE_BOOL }
};
uint8_t res = gargoyle_from_bool(opts, "", NULL, 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "", "", 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "foo", NULL, 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", NULL, 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "foo", "", 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no-foo", "", 0, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "no-", 3, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "no-", 2, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no", "no-", 2, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no", "no-", 3, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-", "no-", 3, 0);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
// ...
res = gargoyle_from_bool(opts, "foo", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "bar", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "bar", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_ICASE);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "bar", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "NO-bar", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "no_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "bar", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "bar", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "no_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "noon", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_SYMBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "NO-bar", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "no_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "NO_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No-", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "foo", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-foo", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "no_Foo", "no_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "bar", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no-bar", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_FALSE(foo);
res = gargoyle_from_bool(opts, "noon", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "no", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "No", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
res = gargoyle_from_bool(opts, "Bar", "No_", 3, GARGOYLE_FLG_FLXBL);
CU_ASSERT_EQUAL(res, GARGOYLE_ERR_SUCCESS);
CU_ASSERT_TRUE(foo);
}
void scribe_test_from_rope(void) {
}