@prefix doap: <http://usefulinc.com/ns/doap#>.
@prefix foaf: <http://xmlns.com/foaf/0.1/>.
@prefix earl: <http://www.w3.org/ns/earl#>.
@prefix dc: <http://purl.org/dc/terms/>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
@prefix rdft: <http://www.w3.org/ns/rdftest#>.
@prefix mf: <http://www.w3.org/2001/sw/DataAccess/tests/test-manifest#>.
@prefix string: <http://www.w3.org/2000/10/swap/string#>.
@prefix list: <http://www.w3.org/2000/10/swap/list#>.
@prefix time: <http://www.w3.org/2000/10/swap/time#>.
@prefix log: <http://www.w3.org/2000/10/swap/log#>.
@prefix e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>.

{   <https://eyereasoner.github.io/eye/reasoning/turtle-dev/run-outcome.n3> foaf:primaryTopic <https://eyereasoner.github.io/eye/>;
        dc:issued ?DATE;
        foaf:maker <https://eyereasoner.github.io/> .

    <https://eyereasoner.github.io/eye/> a doap:Project, earl:TestSubject, earl:Software;
        doap:name "EYE";
        doap:homepage <https://eyereasoner.github.io/eye/index.html>;
        doap:license <http://opensource.org/licenses/MIT>;
        doap:description "Euler Yet another proof Engine"@en;
        doap:programming-language "Prolog";
        doap:implements <https://w3c.github.io/N3/spec/>;
        doap:category <http://dbpedia.org/resource/Resource_Description_Framework>;
        doap:download-page <http://sourceforge.net/projects/eulersharp/files/eulersharp/>;
        doap:developer <https://eyereasoner.github.io/>;
        doap:maintainer <https://eyereasoner.github.io/>;
        doap:documenter <https://eyereasoner.github.io/>;
        foaf:maker <https://eyereasoner.github.io/>;
        dc:title "EYE";
        dc:description "Euler Yet another proof Engine"@en;
        dc:creator <https://eyereasoner.github.io/> .

    <https://eyereasoner.github.io/> a foaf:Person, earl:Assertor;
        foaf:name "Jos De Roo";
        foaf:title "Reseacher and developer";
        foaf:homepage <https://eyereasoner.github.io/> .
} <= {
    "" time:localTime ?DATE.
}.

{   [ a earl:Assertion;
        earl:assertedBy <https://eyereasoner.github.io/>;
        earl:subject <https://eyereasoner.github.io/eye/>;
        earl:test ?TEST;
        earl:result [
            a earl:TestResult;
            earl:outcome ?OUTCOME;
            dc:date ?DATE ];
        earl:mode earl:automatic ] .
} <= {
    ?TEST a rdft:TestTurtlePositiveSyntax;
        mf:action ?ACTION.
    ?ACTION log:uri ?ACT.
    ("eye --quiet --nope " ?ACT " 2>&1 | grep ERROR | wc -l > out.txt") string:concatenation ?CMD.
    ?CMD e:exec 0.
    "out.txt" e:fileString ?OUT.
    (("0" earl:passed) ("1" earl:failed)) list:member (?OUT ?OUTCOME).
    "rm out.txt" e:exec 0.
    "" time:localTime ?DATE.
}.

{   [ a earl:Assertion;
        earl:assertedBy <https://eyereasoner.github.io/>;
        earl:subject <https://eyereasoner.github.io/eye/>;
        earl:test ?TEST;
        earl:result [
            a earl:TestResult;
            earl:outcome ?OUTCOME;
            dc:date ?DATE ];
        earl:mode earl:automatic ] .
} <= {
    ?TEST a rdft:TestTurtleNegativeSyntax;
        mf:action ?ACTION.
    ?ACTION log:uri ?ACT.
    ("eye --quiet --nope " ?ACT " 2>&1 | grep ERROR | wc -l > out.txt") string:concatenation ?CMD.
    ?CMD e:exec 0.
    "out.txt" e:fileString ?OUT.
    (("1" earl:passed) ("0" earl:failed)) list:member (?OUT ?OUTCOME).
    "rm out.txt" e:exec 0.
    "" time:localTime ?DATE.
}.

{   [ a earl:Assertion;
        earl:assertedBy <https://eyereasoner.github.io/>;
        earl:subject <https://eyereasoner.github.io/eye/>;
        earl:test ?TEST;
        earl:result [
            a earl:TestResult;
            earl:outcome ?OUTCOME;
            dc:date ?DATE ];
        earl:mode earl:automatic ] .
} <= {
    ?TEST a rdft:TestTurtleEval;
        mf:action ?ACTION;
        mf:result ?RESULT.
    ?ACTION log:uri ?ACT.
    ?RESULT log:uri ?RES.
    ("eye --quiet --nope " ?ACT " --entail " ?RES " 2>/dev/null | grep 'true.' | wc -l > out.txt") string:concatenation ?CMD.
    ?CMD e:exec 0.
    "out.txt" e:fileString ?OUT.
    (("1" earl:passed) ("0" earl:failed)) list:member (?OUT ?OUTCOME).
    "rm out.txt" e:exec 0.
    "" time:localTime ?DATE.
}.

{   [ a earl:Assertion;
        earl:assertedBy <https://eyereasoner.github.io/>;
        earl:subject <https://eyereasoner.github.io/eye/>;
        earl:test ?TEST;
        earl:result [
            a earl:TestResult;
            earl:outcome ?OUTCOME;
            dc:date ?DATE ];
        earl:mode earl:automatic ] .
} <= {
    ?TEST a rdft:TestTurtleNegativeEval;
        mf:action ?ACTION;
        mf:result ?RESULT.
    ?ACTION log:uri ?ACT.
    ?RESULT log:uri ?RES.
    ("eye --quiet --nope " ?ACT " --entail " ?RES " 2>/dev/null | grep 'true.' | wc -l > out.txt") string:concatenation ?CMD.
    ?CMD e:exec 0.
    "out.txt" e:fileString ?OUT.
    (("1" earl:passed) ("0" earl:failed)) list:member (?OUT ?OUTCOME).
    "rm out.txt" e:exec 0.
    "" time:localTime ?DATE.
}.
