From 0d64e8ef89d0dbfb582a07fb1b02c0d301100d32 Mon Sep 17 00:00:00 2001 From: Petri Lehtinen Date: Mon, 30 Jan 2012 21:23:15 +0200 Subject: [PATCH] Make test_load.c not depend on the C locale Fixes #51. --- test/suites/api/test_load.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/test/suites/api/test_load.c b/test/suites/api/test_load.c index d8cb912..1f3ff1c 100644 --- a/test/suites/api/test_load.c +++ b/test/suites/api/test_load.c @@ -13,13 +13,24 @@ static void file_not_found() { json_t *json; json_error_t error; + char *pos; json = json_load_file("/path/to/nonexistent/file.json", 0, &error); if(json) fail("json_load_file returned non-NULL for a nonexistent file"); if(error.line != -1) fail("json_load_file returned an invalid line number"); - if(strcmp(error.text, "unable to open /path/to/nonexistent/file.json: No such file or directory") != 0) + + /* The error message is locale specific, only check the beginning + of the error message. */ + + pos = strchr(error.text, ':'); + if(!pos) + fail("json_load_file returne an invalid error message"); + + *pos = '\0'; + + if(strcmp(error.text, "unable to open /path/to/nonexistent/file.json") != 0) fail("json_load_file returned an invalid error message"); }