Package com.hp.hpl.jena.sparql.resultset

Examples of com.hp.hpl.jena.sparql.resultset.ResultSetRewindable


    }
   
    void runTestSelect(Query query, QueryExecution qe) throws Exception
    {
        // Do the query!
        ResultSetRewindable resultsActual = ResultSetFactory.makeRewindable(qe.execSelect()) ;
       
        // Turn into a resettable version
        //ResultSetRewindable results = ResultSetFactory.makeRewindable(resultsActual) ;
        qe.close() ;
       
        if ( results == null )
            return ;
       
        if ( true )
        {
            // Assumes resultSetCompare can cope with full isomorphism possibilities.
            ResultSetRewindable resultsExpected ;
            if ( results.isResultSet() )
                resultsExpected = ResultSetFactory.makeRewindable(results.getResultSet()) ;
            else if ( results.isModel() )
                resultsExpected = ResultSetFactory.makeRewindable(results.getModel()) ;
            else
            {
                fail("Wrong result type for SELECT query") ;
                resultsExpected = null ; // Keep the compiler happy
            }
           
            if ( query.isReduced() )
            {
                // Reduced - best we can do is DISTINCT
                resultsExpected = unique(resultsExpected) ;
                resultsActual = unique(resultsActual) ;
            }
            boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            if ( ! b )
            {
                resultsExpected.reset() ;
                resultsActual.reset() ;
                boolean b2 = resultSetEquivalent(query, resultsExpected, resultsActual) ;
                printFailedResultSetTest(query, qe, resultsExpected, resultsActual) ;
            }
            assertTrue("Results do not match: "+testItem.getName(), b) ;
           
            return ;
        }
       
        // TEMPOPRARY
        // Later (when result set compare can cope with full bNode isomorphism)
        // always convert a result set model to a result set and test.
        if ( results.isResultSet() )
        {
            ResultSetRewindable resultsExpected = ResultSetFactory.makeRewindable(results.getResultSet()) ;
            if ( query.isReduced() )
            {
                // Reduced - best we can do is DISTINCT
                resultsExpected = unique(resultsExpected) ;
                resultsActual = unique(resultsActual) ;
            }

            boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            if ( ! b )
                printFailedResultSetTest(query, qe, resultsExpected, resultsActual) ;
            assertTrue("Results do not match: "+testItem.getName(), b) ;
        }
        else if ( results.isModel() )
        {
            // TEMPORARY
            // A lot of early tests were written using RDF-encoded result sets.
            // Choosing to do model->result set is delayed.
            // The results might have been for CONSTRUCT/DESCRIBE
           
            // What's more the this can cope with isomorphism of bNodes.
           
            Model resultsExpected = results.getModel() ;
               
            if ( query.isReduced() )
            {
                // Reduced - best we can do is DISTINCT
                ResultSetRewindable x = ResultSetFactory.makeRewindable(resultsExpected) ;   
                resultsExpected = ResultSetFormatter.toModel(unique(x)) ;
                resultsActual = unique(resultsActual) ;
            }
               
            //System.err.println(getName()+": Result set model testing") ;
View Full Code Here


       
        IndexLARQ index = builder.getIndex() ;
        LARQ.setDefaultIndex(index) ;
       
        QueryExecution qe = QueryExecutionFactory.create(query, model) ;
        ResultSetRewindable rsExpected =
            ResultSetFactory.makeRewindable(ResultSetFactory.load(root+resultsFile)) ;
       
        ResultSetRewindable rsActual =
            ResultSetFactory.makeRewindable(qe.execSelect()) ;
        boolean b = QueryTest.resultSetEquivalent(query, rsActual, rsExpected) ;
        if ( ! b )
        {
            rsActual.reset() ;
            rsExpected.reset() ;
            System.out.println("==== Different (LARQ)") ;
            System.out.println("== Actual") ;
            ResultSetFormatter.out(rsActual) ;
            System.out.println("== Expected") ;
View Full Code Here

        // ---- First, get the expected results by executing in-memory or from a results file.
       
        ResultSet rs = null ;
        if ( item.getResults() != null )
            rs = item.getResults().getResultSet() ;
        ResultSetRewindable rs1 = null ;
        String expectedLabel = "" ;
        if ( rs != null )
        {
            rs1 = ResultSetFactory.makeRewindable(rs) ;
            expectedLabel = "Results file" ;
        }
        else
        {
            QueryEngineFactory f = QueryEngineRef.getFactory() ;
            QueryExecution qExec1 = new QueryExecutionBase(query, ds, null, f) ;
            rs1 = ResultSetFactory.makeRewindable(qExec1.execSelect()) ;
            qExec1.close() ;
            expectedLabel = "Standard engine" ;
        }
       
        // ---- Second, execute in DB

        QueryEngineFactory f2 = QueryEngineSDB.getFactory() ;
        ds = DatasetStore.create(store) ;
        QueryExecution qExec2 = new QueryExecutionBase(query, ds, null, f2) ;
       
        try {
            SDBConnection.logSQLExceptions = true ;
            rs = qExec2.execSelect() ;
           
            ResultSetRewindable rs2 = ResultSetFactory.makeRewindable(rs) ;
            boolean b = ResultSetCompare.equalsByTerm(rs1, rs2) ;
            if ( !b )
            {
                rs1.reset() ;
                rs2.reset() ;
                System.out.println("------------------- "+this.getName());
                System.out.printf("**** Expected (%s)", expectedLabel) ;
                ResultSetFormatter.out(System.out, rs1) ;
                System.out.println("**** Got (SDB engine)") ;
                ResultSetFormatter.out(System.out, rs2) ;
View Full Code Here

        Dataset ds = DatasetFactory.create(defaultGraphURIs, namedGraphURIs) ;
        ARQ.getContext().set(ARQ.strictGraph, oldValue) ;
       
        // ---- First, get the expected results by executing in-memory or from a results file.
       
        ResultSetRewindable rs1 = null ;
        String expectedLabel = "" ;
        if ( results != null )
        {
            rs1 = ResultSetFactory.makeRewindable(results.getResultSet()) ;
            expectedLabel = "Results file" ;
        }
        else
        {
            QueryEngineFactory f = QueryEngineRef.getFactory() ;
            QueryExecution qExec1 = new QueryExecutionBase(query, ds, null, f) ;
            rs1 = ResultSetFactory.makeRewindable(qExec1.execSelect()) ;
            qExec1.close() ;
            expectedLabel = "Standard engine" ;
        }
       
        // ---- Second, execute in persistent graph

        Dataset ds2 = dataset ; //DatasetFactory.create(model) ;
        QueryExecution qExec2 = QueryExecutionFactory.create(query, ds2) ;
        ResultSet rs = qExec2.execSelect() ;
        ResultSetRewindable rs2 = ResultSetFactory.makeRewindable(rs) ;
       
        // See if the same.
        boolean b = ResultSetCompare.equalsByValue(rs1, rs2) ;
        if ( !b )
        {
            rs1.reset() ;
            rs2.reset() ;
            System.out.println("------------------- "+this.getName());
            System.out.printf("**** Expected (%s)", expectedLabel) ;
            ResultSetFormatter.out(System.out, rs1) ;
            System.out.println("**** Got (TDB)") ;
            ResultSetFormatter.out(System.out, rs2) ;
View Full Code Here

    private static void equals(ResultSet rs1, ResultSet rs2)
    { same(rs1, rs2, true) ; }
   
    private static void same(ResultSet rs1, ResultSet rs2, boolean result)
    {
        ResultSetRewindable rsw1 = ResultSetFactory.makeRewindable(rs1) ;
        ResultSetRewindable rsw2 = ResultSetFactory.makeRewindable(rs2) ;
        boolean b = ResultSetCompare.equalsByValue(rsw1, rsw2) ;
        if ( b != result)
        {
            System.out.println("Different: ") ;
            rsw1.reset() ;
            rsw2.reset() ;
            ResultSetFormatter.out(rsw1) ;
            ResultSetFormatter.out(rsw2) ;
            System.out.println() ;
        }
       
View Full Code Here

    }
   
    void runTestSelect(Query query, QueryExecution qe) throws Exception
    {
        // Do the query!
        ResultSetRewindable resultsActual = ResultSetFactory.makeRewindable(qe.execSelect()) ;
       
        qe.close() ;
       
        if ( results == null )
            return ;
       
        // Assumes resultSetCompare can cope with full isomorphism possibilities.
        ResultSetRewindable resultsExpected ;
        if ( results.isResultSet() )
            resultsExpected = ResultSetFactory.makeRewindable(results.getResultSet()) ;
        else if ( results.isModel() )
            resultsExpected = ResultSetFactory.makeRewindable(results.getModel()) ;
        else
        {
            fail("Wrong result type for SELECT query") ;
            resultsExpected = null ; // Keep the compiler happy
        }
       
        if ( query.isReduced() )
        {
            // Reduced - best we can do is DISTINCT
            resultsExpected = unique(resultsExpected) ;
            resultsActual = unique(resultsActual) ;
        }
       
        // Hack for CSV : tests involving bNodes need manually checking.
        if ( testItem.getResultFile().endsWith(".csv") )
        {
            resultsActual = convertToStrings(resultsActual) ;
            resultsActual.reset() ;

            int nActual = ResultSetFormatter.consume(resultsActual) ;
            int nExpected = ResultSetFormatter.consume(resultsExpected) ;
            resultsActual.reset() ;
            resultsExpected.reset() ;
            assertEquals("CSV: Different number of rows", nExpected, nActual) ;
            boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            if ( !b )
                System.out.println("Manual check of CSV results required: "+testItem.getName()) ;
            return ;
        }
           
        boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
       
        if ( ! b )
        {
            resultsExpected.reset() ;
            resultsActual.reset() ;
            boolean b2 = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            printFailedResultSetTest(query, qe, resultsExpected, resultsActual) ;
        }
        assertTrue("Results do not match: "+testItem.getName(), b) ;
View Full Code Here

    private static void equals(ResultSet rs1, ResultSet rs2)
    { same(rs1, rs2, true) ; }
   
    private static void same(ResultSet rs1, ResultSet rs2, boolean result)
    {
        ResultSetRewindable rsw1 = ResultSetFactory.makeRewindable(rs1) ;
        ResultSetRewindable rsw2 = ResultSetFactory.makeRewindable(rs2) ;
        boolean b = ResultSetCompare.equalsByValue(rsw1, rsw2) ;
        if ( b != result)
        {
            System.out.println("Different: ") ;
            rsw1.reset() ;
            rsw2.reset() ;
            ResultSetFormatter.out(rsw1) ;
            ResultSetFormatter.out(rsw2) ;
            System.out.println() ;
        }
       
View Full Code Here

        Dataset ds = DatasetFactory.create(defaultGraphURIs, namedGraphURIs) ;
        ARQ.getContext().set(ARQ.strictGraph, oldValue) ;
       
        // ---- First, get the expected results by executing in-memory or from a results file.
       
        ResultSetRewindable rs1 = null ;
        String expectedLabel = "" ;
        if ( results != null )
        {
            rs1 = ResultSetFactory.makeRewindable(results.getResultSet()) ;
            expectedLabel = "Results file" ;
        }
        else
        {
            QueryEngineFactory f = QueryEngineRef.getFactory() ;
            QueryExecution qExec1 = new QueryExecutionBase(query, ds, null, f) ;
            rs1 = ResultSetFactory.makeRewindable(qExec1.execSelect()) ;
            qExec1.close() ;
            expectedLabel = "Standard engine" ;
        }
       
        // ---- Second, execute in persistent graph

        Dataset ds2 = dataset ; //DatasetFactory.create(model) ;
        QueryExecution qExec2 = QueryExecutionFactory.create(query, ds2) ;
        ResultSet rs = qExec2.execSelect() ;
        ResultSetRewindable rs2 = ResultSetFactory.makeRewindable(rs) ;
       
        // See if the same.
        boolean b = ResultSetCompare.equalsByValue(rs1, rs2) ;
        if ( !b )
        {
            rs1.reset() ;
            rs2.reset() ;
            System.out.println("------------------- "+this.getName());
            System.out.printf("**** Expected (%s)", expectedLabel) ;
            ResultSetFormatter.out(System.out, rs1) ;
            System.out.println("**** Got (TDB)") ;
            ResultSetFormatter.out(System.out, rs2) ;
View Full Code Here

    }
   
    void runTestSelect(Query query, QueryExecution qe) throws Exception
    {
        // Do the query!
        ResultSetRewindable resultsActual = ResultSetFactory.makeRewindable(qe.execSelect()) ;
       
        qe.close() ;
       
        if ( results == null )
            return ;
       
        // Assumes resultSetCompare can cope with full isomorphism possibilities.
        ResultSetRewindable resultsExpected ;
        if ( results.isResultSet() )
            resultsExpected = ResultSetFactory.makeRewindable(results.getResultSet()) ;
        else if ( results.isModel() )
            resultsExpected = ResultSetFactory.makeRewindable(results.getModel()) ;
        else
        {
            fail("Wrong result type for SELECT query") ;
            resultsExpected = null ; // Keep the compiler happy
        }
       
        if ( query.isReduced() )
        {
            // Reduced - best we can do is DISTINCT
            resultsExpected = unique(resultsExpected) ;
            resultsActual = unique(resultsActual) ;
        }
       
        // Hack for CSV : tests involving bNodes need manually checking.
        if ( testItem.getResultFile().endsWith(".csv") )
        {
            resultsActual = convertToStrings(resultsActual) ;
            resultsActual.reset() ;

            int nActual = ResultSetFormatter.consume(resultsActual) ;
            int nExpected = ResultSetFormatter.consume(resultsExpected) ;
            resultsActual.reset() ;
            resultsExpected.reset() ;
            assertEquals("CSV: Different number of rows", nExpected, nActual) ;
            boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            if ( !b )
                System.out.println("Manual check of CSV results required: "+testItem.getName()) ;
            return ;
        }
           
        boolean b = resultSetEquivalent(query, resultsExpected, resultsActual) ;
       
        if ( ! b )
        {
            resultsExpected.reset() ;
            resultsActual.reset() ;
            boolean b2 = resultSetEquivalent(query, resultsExpected, resultsActual) ;
            printFailedResultSetTest(query, qe, resultsExpected, resultsActual) ;
        }
        assertTrue("Results do not match: "+testItem.getName(), b) ;
View Full Code Here

TOP

Related Classes of com.hp.hpl.jena.sparql.resultset.ResultSetRewindable

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.