summaryrefslogtreecommitdiff
path: root/libappstream-glib/as-self-test.c
diff options
context:
space:
mode:
Diffstat (limited to 'libappstream-glib/as-self-test.c')
-rw-r--r--libappstream-glib/as-self-test.c356
1 files changed, 0 insertions, 356 deletions
diff --git a/libappstream-glib/as-self-test.c b/libappstream-glib/as-self-test.c
index 7e56e60..bb6b0dc 100644
--- a/libappstream-glib/as-self-test.c
+++ b/libappstream-glib/as-self-test.c
@@ -36,7 +36,6 @@
#include "as-icon-private.h"
#include "as-image-private.h"
#include "as-review-private.h"
-#include "as-inf.h"
#include "as-markup.h"
#include "as-monitor.h"
#include "as-node-private.h"
@@ -2173,52 +2172,6 @@ as_test_app_parse_file_desktop_func (void)
}
static void
-as_test_app_parse_file_inf_func (void)
-{
- AsIcon *ic;
- AsRelease *rel;
- GError *error = NULL;
- GPtrArray *releases;
- gboolean ret;
- g_autofree gchar *filename = NULL;
- g_autoptr(AsApp) app = NULL;
-
- /* create an AsApp from a desktop file */
- app = as_app_new ();
- filename = as_test_get_filename ("example.inf");
- ret = as_app_parse_file (app,
- filename,
- AS_APP_PARSE_FLAG_NONE,
- &error);
- g_assert_no_error (error);
- g_assert (ret);
-
- /* test things we found */
- g_assert_cmpstr (as_app_get_name (app, "C"), ==, "ColorHug Firmware");
- g_assert_cmpstr (as_app_get_comment (app, "C"), ==,
- "Firmware for the ColorHug Colorimeter");
- g_assert_cmpstr (as_app_get_source_file (app), ==, filename);
- g_assert_cmpstr (as_app_get_id (app), ==, "84f40464-9272-4ef7-9399-cd95f12da695");
-
- /* check icon */
- g_assert_cmpint (as_app_get_icons(app)->len, ==, 1);
- ic = as_app_get_icon_default (app);
- g_assert (ic != NULL);
- g_assert_cmpstr (as_icon_get_name (ic), ==, "application-x-executable");
- g_assert_cmpint (as_icon_get_kind (ic), ==, AS_ICON_KIND_STOCK);
- g_assert_cmpint (as_icon_get_width (ic), ==, 0);
- g_assert_cmpint (as_icon_get_height (ic), ==, 0);
-
- /* check releases */
- releases = as_app_get_releases (app);
- g_assert_cmpint (releases->len, ==, 1);
- rel = g_ptr_array_index (releases, 0);
- g_assert_cmpint ((gint32) as_release_get_timestamp (rel), ==, 1425340800);
- g_assert_cmpstr (as_release_get_version (rel), ==, "0.2.2");
- //g_assert_cmpstr (as_release_get_description (rel), ==, "XXX");
-}
-
-static void
as_test_app_no_markup_func (void)
{
GError *error = NULL;
@@ -4653,313 +4606,6 @@ as_test_utils_vercmp_func (void)
}
static void
-as_test_inf_func (void)
-{
- GError *error = NULL;
- GKeyFile *kf;
- const gchar *data;
- gboolean ret;
- gchar *tmp;
- guint64 ts;
- g_autoptr(GDir) dir = NULL;
- g_autofree gchar *filename = NULL;
- g_autofree gchar *infs = NULL;
-
- /* case insensitive */
- kf = g_key_file_new ();
- ret = as_inf_load_data (kf, "[Version]\nClass=Firmware",
- AS_INF_LOAD_FLAG_CASE_INSENSITIVE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "version", "class", NULL);
- g_assert_cmpstr (tmp, ==, "Firmware");
- g_free (tmp);
-
- /* section merging */
- ret = as_inf_load_data (kf, "[Version]\nPnpLockdown=1", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "version", "class", NULL);
- g_assert_cmpstr (tmp, ==, "Firmware");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Version", "PnpLockdown", NULL);
- g_assert_cmpstr (tmp, ==, "1");
- g_free (tmp);
-
- /* dequoting */
- ret = as_inf_load_data (kf, "[Version]\n"
- "PnpLockdown = \" 2 \"\n"
- "Empty = \"\"", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "PnpLockdown", NULL);
- g_assert_cmpstr (tmp, ==, " 2 ");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Version", "Empty", NULL);
- g_assert_cmpstr (tmp, ==, "");
- g_free (tmp);
-
- /* autovalues */
- ret = as_inf_load_data (kf, "[RandomList]\nfilename.cap", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "RandomList", "value000", NULL);
- g_assert_cmpstr (tmp, ==, "filename.cap");
- g_free (tmp);
-
- /* autovalues with quotes */
- ret = as_inf_load_data (kf, "[RandomList2]\n\"SomeRandomValue=1\"", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "RandomList2", "value000", NULL);
- g_assert_cmpstr (tmp, ==, "SomeRandomValue=1");
- g_free (tmp);
-
- /* Dirids */
- ret = as_inf_load_data (kf, "[DriverServiceInst]\nServiceBinary=%12%\\service.exe", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "DriverServiceInst", "ServiceBinary", NULL);
- g_assert_cmpstr (tmp, ==, "/tmp/service.exe");
- g_free (tmp);
-
- /* comments */
- data = "; group priority\n"
- "[Metadata] ; similar to [Version]\n"
- "Vendor=Hughski ; vendor name\n"
- "Owner=\"Richard; Ania\"\n"
- "; device name priority\n"
- "Device=\"ColorHug\" ; device name";
- ret = as_inf_load_data (kf, data, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Metadata", "Vendor", NULL);
- g_assert_cmpstr (tmp, ==, "Hughski");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Metadata", "Device", NULL);
- g_assert_cmpstr (tmp, ==, "ColorHug");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Metadata", "Owner", NULL);
- g_assert_cmpstr (tmp, ==, "Richard; Ania");
- g_free (tmp);
-
- /* comment values */
- tmp = g_key_file_get_comment (kf, "Metadata", "Vendor", NULL);
- g_assert_cmpstr (tmp, ==, "vendor name\n");
- g_free (tmp);
- tmp = g_key_file_get_comment (kf, "Metadata", "Device", NULL);
- g_assert_cmpstr (tmp, ==, "device name priority\n");
- g_free (tmp);
- tmp = g_key_file_get_comment (kf, "Metadata", "Owner", NULL);
- g_assert_cmpstr (tmp, ==, NULL);
- g_free (tmp);
-// tmp = g_key_file_get_comment (kf, "metadata", NULL, NULL);
-// g_assert_cmpstr (tmp, ==, "group priority");
-// g_free (tmp);
-
- /* strings substitution */
- data = "[Version]\n"
- "Provider=Vendor was %Provider% now %Unknown% Ltd\n"
- "[Strings]\n"
- "Provider=Hughski\n";
- ret = as_inf_load_data (kf, data, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "Vendor was Hughski now %Unknown% Ltd");
- g_free (tmp);
-
- /* continued lines */
- data = "[Version]\n"
- "Provider=Richard & \\\n"
- "Ania & \\\n"
- "Friends";
- ret = as_inf_load_data (kf, data, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "Richard & Ania & Friends");
- g_free (tmp);
-
- /* multiline value */
- data = "[Metadata]\n"
- "UpdateDescription = \"This is a very \"long\" update \" |\n"
- " \"description designed to be shown \" |\n"
- " \"to the end user.\"";
- ret = as_inf_load_data (kf, data, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Metadata", "UpdateDescription", NULL);
- g_assert_cmpstr (tmp, ==, "This is a very \"long\" update description "
- "designed to be shown to the end user.");
- g_free (tmp);
-
- /* substitution as the key name */
- data = "[Version]\n"
- "%Manufacturer.Foo% = \"Devices\"\n"
- "[Strings]\n"
- "Manufacturer.Foo = \"Hughski\"\n";
- ret = as_inf_load_data (kf, data, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Hughski", NULL);
- g_assert_cmpstr (tmp, ==, "Devices");
- g_free (tmp);
-
- /* key names with double quotes */
- ret = as_inf_load_data (kf, "[\"Firmware\"]\nFoo=Bar\n", 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Firmware", "Foo", NULL);
- g_assert_cmpstr (tmp, ==, "Bar");
- g_free (tmp);
-
- /* unbalanced quotes */
- ret = as_inf_load_data (kf, "[Version]\nProvider = \"Hughski\n",
- AS_INF_LOAD_FLAG_STRICT, &error);
- g_assert_error (error, AS_INF_ERROR, AS_INF_ERROR_FAILED);
- g_assert (!ret);
- g_clear_error (&error);
- ret = as_inf_load_data (kf, "[Version]\nProvider = \"Hughski\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "Hughski");
- g_free (tmp);
-
- /* missing string replacement */
- ret = as_inf_load_data (kf, "[Version]\nProvider = \"%MISSING%\"\n",
- AS_INF_LOAD_FLAG_STRICT, &error);
- g_assert_error (error, AS_INF_ERROR, AS_INF_ERROR_FAILED);
- g_assert (!ret);
- g_clear_error (&error);
- ret = as_inf_load_data (kf, "[Version]\nProvider = \"%MISSING%\"\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "%MISSING%");
- g_free (tmp);
-
- /* invalid UTF-8 */
- ret = as_inf_load_data (kf, "[Version]\nProvider = Hughski \x99\n",
- AS_INF_LOAD_FLAG_STRICT, &error);
- g_assert_error (error, AS_INF_ERROR, AS_INF_ERROR_FAILED);
- g_assert (!ret);
- g_clear_error (&error);
- ret = as_inf_load_data (kf, "[Version]\nProvider = Hughski \x99\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "Hughski ?");
- g_free (tmp);
-
- g_key_file_unref (kf);
-
- /* parse file */
- kf = g_key_file_new ();
- filename = as_test_get_filename ("example.inf");
- ret = as_inf_load_file (kf, filename, 0, &error);
- g_assert_no_error (error);
- g_assert (ret);
-
- /* simple */
- tmp = g_key_file_get_string (kf, "Version", "Class", NULL);
- g_assert_cmpstr (tmp, ==, "Firmware");
- g_free (tmp);
-
- /* HK */
- tmp = g_key_file_get_string (kf, "Firmware_AddReg", "HKR_FirmwareId", NULL);
- g_assert_cmpstr (tmp, ==, "{84f40464-9272-4ef7-9399-cd95f12da695}");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Firmware_AddReg", "HKR_FirmwareVersion_0x00010001", NULL);
- g_assert_cmpstr (tmp, ==, "0x00020002");
- g_free (tmp);
- tmp = g_key_file_get_string (kf, "Firmware_AddReg", "HKR_FirmwareFilename", NULL);
- g_assert_cmpstr (tmp, ==, "firmware.bin");
- g_free (tmp);
-
- /* key replacement */
- tmp = g_key_file_get_string (kf, "Firmware_CopyFiles", "value000", NULL);
- g_assert_cmpstr (tmp, ==, "firmware.bin");
- g_free (tmp);
-
- /* double quotes swallowing */
- tmp = g_key_file_get_string (kf, "Strings", "FirmwareDesc", NULL);
- g_assert_cmpstr (tmp, ==, "ColorHug Firmware");
- g_free (tmp);
-
- /* string replacement */
- tmp = g_key_file_get_string (kf, "Version", "Provider", NULL);
- g_assert_cmpstr (tmp, ==, "Hughski");
- g_free (tmp);
-
- /* valid DriverVer */
- ret = as_inf_load_data (kf, "[Version]\n"
- "DriverVer = \"03/01/2015,2.0.0\"\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = as_inf_get_driver_version (kf, &ts, &error);
- g_assert_no_error (error);
- g_assert_cmpstr (tmp, ==, "2.0.0");
- g_assert_cmpint ((gint32) ts, ==, 1425168000);
- g_free (tmp);
-
- /* invalid DriverVer date */
- ret = as_inf_load_data (kf, "[Version]\n"
- "DriverVer = \"13/01/2015,2.0.0\"\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = as_inf_get_driver_version (kf, &ts, &error);
- g_assert_error (error, AS_INF_ERROR, AS_INF_ERROR_INVALID_TYPE);
- g_assert_cmpstr (tmp, ==, NULL);
- g_clear_error (&error);
-
- /* no DriverVer date */
- ret = as_inf_load_data (kf, "[Version]\n"
- "DriverVer = \"2.0.0\"\n",
- AS_INF_LOAD_FLAG_NONE, &error);
- g_assert_no_error (error);
- g_assert (ret);
- tmp = as_inf_get_driver_version (kf, &ts, &error);
- g_assert_error (error, AS_INF_ERROR, AS_INF_ERROR_INVALID_TYPE);
- g_assert_cmpstr (tmp, ==, NULL);
- g_clear_error (&error);
-
- g_key_file_unref (kf);
-
- /* test every .inf file from my Windows XP installation disk */
- infs = as_test_get_filename ("infs");
- if (infs != NULL) {
- dir = g_dir_open (infs, 0, NULL);
- while ((data = g_dir_read_name (dir)) != NULL) {
- g_autofree gchar *path = NULL;
- path = g_build_filename (infs, data, NULL);
- kf = g_key_file_new ();
- ret = as_inf_load_file (kf, path,
- AS_INF_LOAD_FLAG_NONE,
- &error);
- if (g_error_matches (error,
- AS_INF_ERROR,
- AS_INF_ERROR_INVALID_TYPE)) {
- g_clear_error (&error);
- } else {
- if (error != NULL)
- g_print ("Failed to process: %s\n",
- path);
- g_assert_no_error (error);
- g_assert (ret);
- }
- g_key_file_unref (kf);
- }
- }
-}
-
-static void
as_test_utils_install_filename_func (void)
{
gboolean ret;
@@ -5260,11 +4906,9 @@ main (int argc, char **argv)
g_test_add_func ("/AppStream/app{validate-meta-bad}", as_test_app_validate_meta_bad_func);
g_test_add_func ("/AppStream/app{validate-intltool}", as_test_app_validate_intltool_func);
g_test_add_func ("/AppStream/app{parse-file:desktop}", as_test_app_parse_file_desktop_func);
- g_test_add_func ("/AppStream/app{parse-file:inf}", as_test_app_parse_file_inf_func);
g_test_add_func ("/AppStream/app{no-markup}", as_test_app_no_markup_func);
g_test_add_func ("/AppStream/app{subsume}", as_test_app_subsume_func);
g_test_add_func ("/AppStream/app{search}", as_test_app_search_func);
- g_test_add_func ("/AppStream/inf", as_test_inf_func);
g_test_add_func ("/AppStream/markup{import-html}", as_test_markup_import_html);
g_test_add_func ("/AppStream/node", as_test_node_func);
g_test_add_func ("/AppStream/node{reflow}", as_test_node_reflow_text_func);