You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@streams.apache.org by sb...@apache.org on 2019/04/06 23:57:49 UTC
[streams] branch master updated: STREAMS-640 Repeated test failure
in streams-persist-rss
This is an automated email from the ASF dual-hosted git repository.
sblackmon pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/streams.git
The following commit(s) were added to refs/heads/master by this push:
new ee14cb0 STREAMS-640 Repeated test failure in streams-persist-rss
new b124f45 Merge pull request #480 from steveblackmon/STREAMS-640
ee14cb0 is described below
commit ee14cb01937d4aea71e43f4529c58a9426001af5
Author: Steve Blackmon <sb...@apache.org>
AuthorDate: Tue Mar 19 09:55:42 2019 -0500
STREAMS-640 Repeated test failure in streams-persist-rss
---
.../provider/perpetual/RssFeedSchedulerTest.java | 96 ----------------------
1 file changed, 96 deletions(-)
diff --git a/streams-contrib/streams-provider-rss/src/test/java/org/apache/streams/rss/provider/perpetual/RssFeedSchedulerTest.java b/streams-contrib/streams-provider-rss/src/test/java/org/apache/streams/rss/provider/perpetual/RssFeedSchedulerTest.java
deleted file mode 100644
index bf4720a..0000000
--- a/streams-contrib/streams-provider-rss/src/test/java/org/apache/streams/rss/provider/perpetual/RssFeedSchedulerTest.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-package org.apache.streams.rss.provider.perpetual;
-
-import org.apache.streams.rss.FeedDetails;
-import org.apache.streams.rss.provider.RssStreamProviderTask;
-
-import org.junit.Assert;
-import org.junit.Test;
-
-import java.util.ArrayList;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.LinkedBlockingQueue;
-
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.doAnswer;
-import static org.mockito.Mockito.mock;
-
-/**
- * Unit tests for {@link org.apache.streams.rss.provider.perpetual.RssFeedScheduler}
- */
-public class RssFeedSchedulerTest {
-
-
- /**
- * Test that feeds are scheduled based on elapsed time correctly.
- * Takes 1 minute to run.
- */
- @Test
- public void testScheduleFeeds() {
- ExecutorService mockService = mock(ExecutorService.class);
- final List<String> queuedTasks = new ArrayList<>(5);
- doAnswer(invocationOnMock -> {
- queuedTasks.add(((RssStreamProviderTask) invocationOnMock.getArguments()[0]).getRssFeed());
- return null;
- }).when(mockService).execute(any(Runnable.class));
-
- RssFeedScheduler scheduler = new RssFeedScheduler(mockService, createFeedList(), new LinkedBlockingQueue<>(), 1);
- scheduler.scheduleFeeds();
- Assert.assertEquals("Expected 2 Feeds to be scheduled", 2, queuedTasks.size());
- Assert.assertEquals("Expected Feed 1 to be queued first", "1", queuedTasks.get(0));
- Assert.assertEquals("Expected Feed 2 to be queued second", "2", queuedTasks.get(1));
-
- safeSleep(1);
- scheduler.scheduleFeeds();
- Assert.assertEquals("Only feed 1 should have been re-queued", 3, queuedTasks.size());
- Assert.assertEquals("Only feed 1 should have been re-queued", "1", queuedTasks.get(2));
-
- safeSleep(60 * 1000);
- scheduler.scheduleFeeds();
- Assert.assertEquals("Both feeds should have been re-queued", 5, queuedTasks.size());
- Assert.assertEquals("1", queuedTasks.get(3));
- Assert.assertEquals("2", queuedTasks.get(4));
- }
-
- private List<FeedDetails> createFeedList() {
- List<FeedDetails> list = new LinkedList<>();
- FeedDetails fd = new FeedDetails();
- fd.setPollIntervalMillis(1L);
- fd.setUrl("1");
- list.add(fd);
-
- fd = new FeedDetails();
- fd.setPollIntervalMillis(60L * 1000);
- fd.setUrl("2");
- list.add(fd);
- return list;
- }
-
- private void safeSleep(long milliseconds) {
- try {
- Thread.sleep(milliseconds);
- } catch (InterruptedException ie) {
- Thread.currentThread().interrupt();
- }
- }
-
-}