Package: liburiparser1
Version: 0.8.0.1-2
Severity: normal
Dear Maintainer,
here is test program with expected empty output:
***********************************************
#include <stdio.h>
#include <uriparser/Uri.h>
int test(const char *ref, const char *base, const char *expected) {
UriParserStateA stateA;
// Base
UriUriA baseUri;
stateA.uri = &baseUri;
int res = uriParseUriA(&stateA, base);
if (res != 0) {
return 0;
}
// Rel
UriUriA relUri;
stateA.uri = &relUri;
res = uriParseUriA(&stateA, ref);
if (res != 0) {
uriFreeUriMembersA(&baseUri);
return 0;
}
// Expected result
UriUriA expectedUri;
stateA.uri = &expectedUri;
res = uriParseUriA(&stateA, expected);
if (res != 0) {
uriFreeUriMembersA(&baseUri);
uriFreeUriMembersA(&relUri);
uriFreeUriMembersA(&expectedUri);
return 0;
}
// Transform
UriUriA transformedUri;
res = uriAddBaseUriA(&transformedUri, &relUri, &baseUri);
if (res != 0) {
uriFreeUriMembersA(&baseUri);
uriFreeUriMembersA(&relUri);
uriFreeUriMembersA(&expectedUri);
uriFreeUriMembersA(&transformedUri);
return 0;
}
const int equal = (URI_TRUE == uriEqualsUriA(&transformedUri,
&expectedUri));
if (!equal) {
char transformedUriText[1024 * 8];
char expectedUriText[1024 * 8];
uriToStringA(transformedUriText, &transformedUri, 1024 * 8,
NULL);
uriToStringA(expectedUriText, &expectedUri, 1024 * 8, NULL);
printf("\n\n\nExpected: \"%s\"\nReceived: \"%s\"\n\n\n",
expectedUriText, transformedUriText);
}
uriFreeUriMembersA(&baseUri);
uriFreeUriMembersA(&relUri);
uriFreeUriMembersA(&expectedUri);
uriFreeUriMembersA(&transformedUri);
return equal;
}
int main(int argc, char *argv[]) {
return test("/", "http://example.com/a", "http://example.com/");
}
***********************************************
But actual output is:
Expected: "http://example.com/"
Received: "http://example.com/a"
-- System Information:
Debian Release: jessie/sid
APT prefers trusty-updates
APT policy: (500, 'trusty-updates'), (500, 'trusty-security'), (500,
'trusty'), (100, 'trusty-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386
Kernel: Linux 3.13.0-34-generic (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages liburiparser1 depends on:
ii libc6 2.19-0ubuntu6.3
liburiparser1 recommends no packages.
liburiparser1 suggests no packages.
-- no debconf information
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]