"Fossies" - the Fresh Open Source Software Archive 
Member "libextractor-1.11/src/plugins/test_mime.c" (30 Jan 2021, 3663 Bytes) of package /linux/privat/libextractor-1.11.tar.gz:
As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style:
standard) with prefixed line numbers and
code folding option.
Alternatively you can here
view or
download the uninterpreted source code file.
1 /*
2 This file is part of libextractor.
3 Copyright (C) 2012 Vidyut Samanta and Christian Grothoff
4
5 libextractor is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published
7 by the Free Software Foundation; either version 3, or (at your
8 option) any later version.
9
10 libextractor is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with libextractor; see the file COPYING. If not, write to the
17 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
19 */
20 /**
21 * @file plugins/test_mime.c
22 * @brief testcase for ogg plugin
23 * @author Christian Grothoff
24 */
25 #include "platform.h"
26 #include "test_lib.h"
27 #include <magic.h>
28
29
30 /**
31 * Main function for the MIME testcase.
32 *
33 * @param argc number of arguments (ignored)
34 * @param argv arguments (ignored)
35 * @return 0 on success
36 */
37 int
38 main (int argc, char *argv[])
39 {
40 int result = 0;
41 int test_result;
42 int test_result_around_19, test_result_around_22;
43 struct SolutionData courseclear_file_around_19_sol[] = {
44 {
45 EXTRACTOR_METATYPE_MIMETYPE,
46 EXTRACTOR_METAFORMAT_UTF8,
47 "text/plain",
48 /* not sure which is the exact version, but old ones do
49 not even define MAGIC_VERSION, so this is approximately
50 right. Users where this tests fail should report
51 their version number from "magic.h" so we can adjust
52 if necessary. */
53 #ifdef MAGIC_VERSION
54 "audio/ogg",
55 strlen ("audio/ogg") + 1,
56 #else
57 "application/ogg",
58 strlen ("application/ogg") + 1,
59 #endif
60 0
61 },
62 { 0, 0, NULL, NULL, 0, -1 }
63 };
64 struct SolutionData courseclear_file_around_22_sol[] = {
65 {
66 EXTRACTOR_METATYPE_MIMETYPE,
67 EXTRACTOR_METAFORMAT_UTF8,
68 "text/plain",
69 "audio/ogg",
70 strlen ("audio/ogg") + 1,
71 0
72 },
73 { 0, 0, NULL, NULL, 0, -1 }
74 };
75 struct SolutionData gif_image_sol[] = {
76 {
77 EXTRACTOR_METATYPE_MIMETYPE,
78 EXTRACTOR_METAFORMAT_UTF8,
79 "text/plain",
80 "image/gif",
81 strlen ("image/gif") + 1,
82 0
83 },
84 { 0, 0, NULL, NULL, 0, -1 }
85 };
86 struct ProblemSet ps_gif[] = {
87 { "testdata/gif_image.gif",
88 gif_image_sol },
89 { NULL, NULL }
90 };
91 struct ProblemSet ps_ogg_around_19[] = {
92 { "testdata/ogg_courseclear.ogg",
93 courseclear_file_around_19_sol },
94 { NULL, NULL }
95 };
96 struct ProblemSet ps_ogg_around_22[] = {
97 { "testdata/ogg_courseclear.ogg",
98 courseclear_file_around_22_sol },
99 { NULL, NULL }
100 };
101 printf ("Running gif test on libmagic:\n");
102 test_result = (0 == ET_main ("mime", ps_gif) ? 0 : 1);
103 printf ("gif libmagic test result: %s\n", test_result == 0 ? "OK" : "FAILED");
104 result += test_result;
105
106 printf ("Running ogg test on libmagic, assuming version ~5.19:\n");
107 test_result_around_19 = (0 == ET_main ("mime", ps_ogg_around_19) ? 0 : 1);
108 printf ("ogg libmagic test result: %s\n", test_result_around_19 == 0 ? "OK" :
109 "FAILED");
110
111 printf ("Running ogg test on libmagic, assuming version ~5.22:\n");
112 test_result_around_22 = (0 == ET_main ("mime", ps_ogg_around_22) ? 0 : 1);
113 printf ("ogg libmagic test result: %s\n", test_result_around_22 == 0 ? "OK" :
114 "FAILED");
115
116 if ((test_result_around_19 != 0) && (test_result_around_22 != 0))
117 result++;
118 return result;
119 }
120
121
122 /* end of test_mime.c */