def test_cyclic_basic(self): src_a = src(['A', 'B', 'C', 'D']) src_b = src([1, 2, 3]) src_c = src(['a']) src_d = src([]) source = conduit.cyclic(src_a, src_b, src_c, src_d) assert_list_equal(['A', 1, 'a', 'B', 2, 'C', 3, 'D'], list(source))
def test_cyclic_spec(self): src_a = src(['A', 'B', 'C', 'D']) src_b = src([1, 2, 3]) src_c = src(['a']) src_d = src([]) source = conduit.cyclic(src_a, src_b, src_c, src_d) source_spec(source)
def test_unique_cycle(self): src_a = src([1, 2, 3, 4]) src_b = src([]) src_c = src(['a', 1, 5, 'b']) source = conduit.unique(conduit.cyclic(src_a, src_b, src_c)) assert_list_equal([1, 'a', 2, 3, 5, 4, 'b'], list(source)) source.reset() assert_list_equal([1, 'a', 2, 3, 5, 4, 'b'], list(source))
from picdump.folder import Folder, Updater from picdump import pixiv from picdump import log from picdump.conduit import unique, cyclic from picdump.webconsole import WebConsole from picdump.pixiv.filters import filter_manga log.init_logger() cache_dir = "cache" pixiv = pixiv.create(username="******", password="******") default_source = filter_manga(unique(cyclic( pixiv.ranking(span=pixiv.span.daily), pixiv.ranking_log.days_ago(1), pixiv.ranking_log.days_ago(2)))) folders = [ Folder( name="default", path="default", source=default_source, updater=Updater( interval=timedelta(seconds=5), clear_dir=True, source_reset=True, size=pixiv.page_size * 2 ) ) ]
def test_cyclic_empty(self): source = conduit.cyclic(src([])) assert_list_equal([], list(source))