You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

105 lines
4.0 KiB

From 9fb7abeeedc68878f70d2e15c191f13b9f0750b1 Mon Sep 17 00:00:00 2001
From: Jakub Filak <jfilak@redhat.com>
Date: Sat, 8 Feb 2014 09:14:59 +0100
Subject: [LIBREPORT PATCH 21/24] testsuite: complex testing of xml locales
Related to rhbz#1063320
Signed-off-by: Jakub Filak <jfilak@redhat.com>
---
tests/xml_definition.at | 79 +++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 79 insertions(+)
diff --git a/tests/xml_definition.at b/tests/xml_definition.at
index e9cef49..d3032c9 100644
--- a/tests/xml_definition.at
+++ b/tests/xml_definition.at
@@ -55,6 +55,85 @@ int main(void)
free_workflow(workflow);
}
+ setlocale(LC_ALL, "zh_CN.utf8");
+
+ {
+ event_config_t *event_config = new_event_config("event_test_definition");
+ load_event_description_from_file(event_config, "../../conf/event_test_definition.xml");
+ assert(strcmp("screen name", ec_get_screen_name(event_config)) == 0);
+ assert(strcmp("description", ec_get_description(event_config)) == 0);
+ assert(strcmp("long description", ec_get_long_desc(event_config)) == 0);
+
+ assert(event_config->options != NULL || !"At least one event option was loaded");
+
+ /* typeof(event_config->options) == (GList *) */
+ event_option_t *event_option = (event_option_t *)event_config->options->data;
+ assert(strcmp("label", event_option->eo_label) == 0);
+ assert(strcmp("note_html", event_option->eo_note_html) == 0);
+
+ /* Option description is not supported yet
+ assert(strcmp("description", event_option->eo_description) == 0);
+ */
+
+ free_event_config(event_config);
+ }
+
+ {
+ workflow_t *workflow = new_workflow("workflow_test_definition");
+ load_workflow_description_from_file(workflow, "../../conf/workflow_test_definition.xml");
+
+ assert(strcmp("screen name", wf_get_screen_name(workflow)) == 0);
+ assert(strcmp("description", wf_get_description(workflow)) == 0);
+
+ /* Long description is not supported yet
+ assert(strcmp("long description", wf_get_long_desc(workflow)) == 0);
+ */
+
+ free_workflow(workflow);
+ }
+
+ /*
+ XML definitions does not contain strings for zh_HK but there are strings
+ for zh_CN and followed by zh_TW. libreport should you string for zh_TW
+ and these strings are prefixed with "bad " string.
+ */
+ setlocale(LC_ALL, "zh_HK");
+
+ {
+ event_config_t *event_config = new_event_config("event_test_definition");
+ load_event_description_from_file(event_config, "../../conf/event_test_definition.xml");
+ assert(strcmp("bad screen name", ec_get_screen_name(event_config)) == 0);
+ assert(strcmp("bad description", ec_get_description(event_config)) == 0);
+ assert(strcmp("bad long description", ec_get_long_desc(event_config)) == 0);
+
+ assert(event_config->options != NULL || !"At least one event option was loaded");
+
+ /* typeof(event_config->options) == (GList *) */
+ event_option_t *event_option = (event_option_t *)event_config->options->data;
+ assert(strcmp("bad label", event_option->eo_label) == 0);
+ assert(strcmp("bad note_html", event_option->eo_note_html) == 0);
+
+ /* Option description is not supported yet
+ assert(strcmp("description", event_option->eo_description) == 0);
+ */
+
+ free_event_config(event_config);
+ }
+
+ {
+ workflow_t *workflow = new_workflow("workflow_test_definition");
+ load_workflow_description_from_file(workflow, "../../conf/workflow_test_definition.xml");
+
+ assert(strcmp("bad screen name", wf_get_screen_name(workflow)) == 0);
+ assert(strcmp("bad description", wf_get_description(workflow)) == 0);
+
+ /* Long description is not supported yet
+ assert(strcmp("bad long description", wf_get_long_desc(workflow)) == 0);
+ */
+
+ free_workflow(workflow);
+ }
+
return EXIT_SUCCESS;
}
]])
--
1.8.3.1