Signed-off-by: Nikola Pajkovsky <[email protected]>
---
 tests/koops-parser.at |   26 ++++++++------------------
 tests/koops-test.h    |   18 ++++++++++++++++++
 2 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/tests/koops-parser.at b/tests/koops-parser.at
index 6c726b5..d2c1e6d 100644
--- a/tests/koops-parser.at
+++ b/tests/koops-parser.at
@@ -33,9 +33,9 @@ int main(void)
 {
        /* tests run in abrt/tests/testsuite.dir/X, where X is test number */
        struct test_struct test[] = {
-               {"../../../examples/cut_here.right", "2.6.32-19.el6.x86_64"},
-               {"../../../examples/oops-kernel-3.x.x", 
"3.0.0-3.fc16.i686.PAE"},
-               {"../../../examples/koops-tainted-gw", 
"3.1.0-0.rc9.git0.0.fc16.x86_64"},
+               { EXAMPLE_PFX"/cut_here.right", "2.6.32-19.el6.x86_64" },
+               { EXAMPLE_PFX"/oops-kernel-3.x.x", "3.0.0-3.fc16.i686.PAE" },
+               { EXAMPLE_PFX"/koops-tainted-gw", 
"3.1.0-0.rc9.git0.0.fc16.x86_64"},
        };
 
        int ret = 0;
@@ -58,17 +58,7 @@ enum {
 
 int run_test(const struct test_struct *test, int flags)
 {
-       FILE *fp = xfopen_ro(test->filename);
-
-       fseek(fp, 0, SEEK_END);
-       off_t size = ftell(fp);
-       fseek(fp, 0, SEEK_SET);
-
-       char *koops_bt = xzalloc(size + 1);
-       int r = fread(koops_bt, sizeof(char), size, fp);
-       fclose(fp);
-       if (r < 0)
-               perror_msg_and_die("Can't read '%s'", test->filename);
+       char *koops_bt = fread_full(test->filename);
 
        char *tnt = kernel_tainted_short(koops_bt);
        free(koops_bt);
@@ -97,13 +87,13 @@ int main(void)
 {
        /* tests run in abrt/tests/testsuite.dir/X, where X is test number */
        struct test_struct not_tainted[] = {
-               {"../../../examples/oops1.right", NULL},
+               { EXAMPLE_PFX"/oops1.right", NULL},
        };
 
        struct test_struct tainted[] = {
-               {"../../../examples/koops-tainted-bg1", "G    B      "},
-               {"../../../examples/oops-same-as-oops4.right", "P           "},
-               {"../../../examples/koops-tainted-gw", NULL},
+               { EXAMPLE_PFX"/koops-tainted-bg1", "G    B      " },
+               { EXAMPLE_PFX"/oops-same-as-oops4.right", "P           " },
+               { EXAMPLE_PFX"/koops-tainted-gw", NULL },
        };
 
        log("test not tainted");
diff --git a/tests/koops-test.h b/tests/koops-test.h
index fee7229..53787aa 100644
--- a/tests/koops-test.h
+++ b/tests/koops-test.h
@@ -18,6 +18,8 @@
     51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 */
 
+#define EXAMPLE_PFX "../../../examples"
+
 struct test_struct {
         const char *filename;
         const char *expected_results;
@@ -31,3 +33,19 @@ static inline FILE *xfopen_ro(const char *filename)
 
         return fp;
 }
+
+static inline char *fread_full(const char *filenamep)
+{
+        FILE *fp = xfopen_ro(filenamep);
+
+        fseek(fp, 0, SEEK_END);
+        off_t size = ftell(fp);
+        fseek(fp, 0, SEEK_SET);
+        char *koops_bt = xzalloc(size + 1);
+        int r = fread(koops_bt, sizeof(char), size, fp);
+        fclose(fp);
+        if (r < 0)
+               perror_msg_and_die("Can't read '%s'", filenamep);
+
+        return koops_bt;
+}
-- 
1.7.9.2.302.g3724c

Reply via email to