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.

    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",
        complete(t, tc);

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

This message was sent by Atlassian JIRA

View raw message