edgent-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dale LaBossiere (JIRA)" <j...@apache.org>
Subject [jira] [Created] (QUARKS-143) bogus test behavior with DevelopmentProvider
Date Thu, 14 Apr 2016 01:44:25 GMT
Dale LaBossiere created QUARKS-143:
--------------------------------------

             Summary: bogus test behavior with DevelopmentProvider 
                 Key: QUARKS-143
                 URL: https://issues.apache.org/jira/browse/QUARKS-143
             Project: Quarks
          Issue Type: Bug
          Components: Runtime
            Reporter: Dale LaBossiere


I'm perplexed... if you add the following test to TStreamTest and run the DirectTStreamTest
it works.  If you run the DevelopmentTStreamTest it fails as noted in the commentary.

    
    @Test
    public void testBrokenDevelopmentProvider() throws Exception {
        Topology t = newTopology();
        
        // For some reason, the following sequence fails with no content
        // received by the tester when run with the DevelopmentProvider.
        //
        // Commenting out either the s.filter() OR the s.peek() makes it work.
        // OR putting the peek() before the filter() statement works!???
        //
        // This runs fine with the DirectProvider.
        //
        // I understand that given the structure of this test, the test
        // could reach completion before either the filter or peek was actually
        // called for the second tuple but that doesn't mean the tester
        // should receive/report no tuples.  (in practice, the full println
        // output is present when it fails).

        TStream<String> s = t.strings("a", "b");
        s.filter(tuple -> { System.out.println("filter tuple: "+tuple); return true; });
        s.peek(tuple -> System.out.println("peek tuple: "+tuple));

        Condition<Long> tc = t.getTester().tupleCount(s, 2);
        Condition<List<String>> contents = t.getTester().streamContents(s, "a",
"b");
        complete(t, tc);

        assertTrue("contents "+contents.getResult(), contents.valid());
    }




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message