Anonymous avatar Anonymous committed 941e9d1

Got "make test" to run.

Comments (0)

Files changed (3)

libfilefind/c_glib_based/CMakeLists.txt

         "include/pthread"
 )
 
-ENABLE_TESTING()
+ADD_CUSTOM_TARGET(
+    "test"
+    "perl" "run-tests.pl"
+)
 
+ADD_DEPENDENCIES(
+    "test"
+    "all"
+)
+
+

libfilefind/c_glib_based/run-tests.pl

+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+# use File::Which;
+# use File::Basename;
+use Cwd;
+use FindBin;
+use File::Spec;
+use File::Copy;
+use File::Path;
+use Getopt::Long;
+use Env::Path;
+
+sub run_tests
+{
+    my $tests = shift;
+
+    exec("runprove", @$tests);
+}
+
+my $tests_glob = "*.{exe,py,t}";
+
+GetOptions(
+    '--glob=s' => \$tests_glob,
+) or die "--glob='tests_glob'";
+
+{
+    local $ENV{FCS_PATH} = Cwd::getcwd();
+
+    local $ENV{HARNESS_ALT_INTRP_FILE} =
+        File::Spec->rel2abs(
+            File::Spec->catdir(
+                File::Spec->curdir(),
+                "t", "config", "alternate-interpreters.yml",
+            ),
+        )
+        ;
+
+    local $ENV{HARNESS_PLUGINS} = 
+        "ColorSummary ColorFileVerdicts AlternateInterpreters"
+        ;
+
+    if (system("make", "-s"))
+    {
+        die "make failed";
+    }
+
+    # Put the valgrind test last because it takes a long time.
+    my @tests =
+        sort
+        { 
+            (($a =~ /valgrind/) <=> ($b =~ /valgrind/))
+                ||
+            ($a cmp $b)
+        }
+        glob("t/$tests_glob")
+        ;
+
+    if (! $ENV{FCS_TEST_BUILD})
+    {
+        @tests = grep { !/build-process/ } @tests;
+    }
+
+    {
+        # local $ENV{FCS_PATH} = dirname(which("fc-solve"));
+        print STDERR "FCS_PATH = $ENV{FCS_PATH}\n";
+        run_tests(\@tests);
+    }
+}
+
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (c) 2000 Shlomi Fish
+
+Permission is hereby granted, free of charge, to any person
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without
+restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+
+
+=cut
+

libfilefind/c_glib_based/t/config/alternate-interpreters.yml

+---
+- cmd: unity
+  pattern: \.exe\z
+  type: regex
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.