Exemple #1
0
END_TEST

/**
 * check query replacement asserts on NULL parameter
 */
START_TEST(nsurl_api_assert_replace_query1_test)
{
	const char *rel = "moo";
	nsurl *res;
	nserror err;

	err = nsurl_replace_query(NULL, rel, &res);
	ck_assert(err != NSERROR_OK);
}
Exemple #2
0
END_TEST

/**
 * check query replacement asserts on NULL parameter
 */
START_TEST(nsurl_api_assert_replace_query2_test)
{
	nsurl *url;
	nsurl *res;
	nserror err;

	err = nsurl_create(base_str, &url);
	ck_assert(err == NSERROR_OK);

	err = nsurl_replace_query(url, NULL, &res);
	ck_assert(err != NSERROR_OK);

	nsurl_unref(url);
}
Exemple #3
0
END_TEST

/**
 * check query replacement asserts on bad parameter
 */
START_TEST(nsurl_api_assert_replace_query3_test)
{
	nsurl *url;
	nsurl *res;
	nserror err;
	const char *rel = "moo";

	err = nsurl_create(base_str, &url);
	ck_assert(err == NSERROR_OK);

	err = nsurl_replace_query(url, rel, &res);
	ck_assert(err != NSERROR_OK);

	nsurl_unref(url);
}
Exemple #4
0
/**
 * Test nsurl
 */
int main(void)
{
	nsurl *base;
	nsurl *joined;
	char *string;
	size_t len;
	const char *url;
	const struct test_pairs *test;
	const struct test_triplets *ttest;
	int passed = 0;
	int count = 0;

	/* Create base URL */
	if (nsurl_create("http://a/b/c/d;p?q", &base) != NSERROR_OK) {
		assert(0 && "Failed to create base URL.");
	}

	if (nsurl_get(base, NSURL_WITH_FRAGMENT, &string, &len) != NSERROR_OK) {
		LOG(("Failed to get string"));
	} else {
		LOG(("Testing nsurl_join with base %s", string));
		free(string);
	}

	for (test = join_tests; test->test != NULL; test++) {
		if (nsurl_join(base, test->test, &joined) != NSERROR_OK) {
			LOG(("Failed to join test URL."));
		} else {
			if (nsurl_get(joined, NSURL_WITH_FRAGMENT,
					&string, &len) !=
					NSERROR_OK) {
				LOG(("Failed to get string"));
			} else {
				if (strcmp(test->res, string) == 0) {
					LOG(("\tPASS: \"%s\"\t--> %s",
						test->test,
						string));
					passed++;
				} else {
					LOG(("\tFAIL: \"%s\"\t--> %s",
						test->test,
						string));
					LOG(("\t\tExpecting: %s",
						test->res));
				}
				free(string);
			}
			nsurl_unref(joined);
		}
		count++;
	}

	nsurl_unref(base);

	/* Create tests */
	LOG(("Testing nsurl_create"));
	for (test = create_tests; test->test != NULL; test++) {
		if (nsurl_create(test->test, &base) != NSERROR_OK) {
			LOG(("Failed to create URL:\n\t\t%s.", test->test));
		} else {
			if (strcmp(nsurl_access(base), test->res) == 0) {
				LOG(("\tPASS: \"%s\"\t--> %s",
					test->test, nsurl_access(base)));
				passed++;
			} else {
				LOG(("\tFAIL: \"%s\"\t--> %s",
					test->test, nsurl_access(base)));
				LOG(("\t\tExpecting %s", test->res));
			}

			nsurl_unref(base);
		}
		count++;
	}

	/* Replace query tests */
	LOG(("Testing nsurl_replace_query"));
	for (ttest = replace_query_tests; ttest->test1 != NULL; ttest++) {
		if (nsurl_create(ttest->test1, &base) != NSERROR_OK) {
			LOG(("Failed to create URL:\n\t\t%s.", ttest->test1));
		} else {
			if (nsurl_replace_query(base, ttest->test2, &joined) !=
					NSERROR_OK) {
				LOG(("Failed to make test URL"));
			} else {
				if (strcmp(nsurl_access(joined),
						ttest->res) == 0) {
					LOG(("\tPASS: \"%s\" + %s",
						ttest->test1,
						ttest->test2));
					passed++;
				} else {
					LOG(("\tFAIL: \"%s\" + %s",
						ttest->test1,
						ttest->test2));
					LOG(("\t\tExpecting %s", ttest->res));
					LOG(("\t\tGot %s",
							nsurl_access(joined)));
				}

				nsurl_unref(joined);
			}

			nsurl_unref(base);
		}
		count++;
	}

	if (passed == count) {
		LOG(("Testing complete: SUCCESS"));
	} else {
		LOG(("Testing complete: FAILURE"));
		LOG(("Failed %d out of %d", count - passed, count));
	}

	LOG(("Remaining lwc strings:"));
	lwc_iterate_strings(netsurf_lwc_iterator, NULL);

	return 0;
}