def test_sonarr_snatch(self): release = Release( messages=["son snatch - /dog/ ¤/(- #sad# - pasta"], channel=channel, title="son snatch", url="animal: dog &mood=sad f1: first_fixed f2: fixed_second", indexer="Single", backends=config.backends.keys(), snatches=["my_sonarr"], ) backends.send_approved("my_sonarr", True) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.max_announcements(self, "my_radarr", 1) backends.max_announcements(self, "my_lidarr", 1) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 1) misc.check_announced( self, config, release, )
def test_radarr1_snatch(self): release = Release( messages=["two title : another stuff"], channel=channel, title="two title", url="smth: another stuff", indexer="Simple1", backends=config.backends.keys(), snatches=["Radarr1"], ) backends.send_approved("Radarr1", True) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["Radarr1"], release, ) backends.max_announcements(self, "Sonarr1", 1) backends.max_announcements(self, "Sonarr2", 1) backends.max_announcements(self, "Radarr2", 1) backends.max_announcements(self, "Lidarr1", 1) backends.max_announcements(self, "Lidarr2", 1) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 1) misc.check_announced( self, config, release, )
def test_no_snatch(self): release = Release( messages=["a title : some stuff"], channel=channel, title="a title", url="smth: some stuff", indexer="Simple1", backends=config.backends.keys(), ) misc.announce_await_push(self, release) for backend in config.backends.values(): backends.check_first_rx( self, backend, release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_no_snatch(self): release = Release( messages=["this is a name - /cow/ ¤/(- #angry# - pasta and sauce"], channel=channel, title="this is a name", url="animal: cow &mood=angry f1: first_fixed f2: fixed_second", indexer="Single", backends=["my_sonarr"], ) backends.push_counter = 1 misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.max_announcements(self, "my_radarr", 0) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_sonarr_snatch(self): release = Release( messages=[ "Old: second multi ", "Category: color;", "PATH: https://example/a?id=54321", ], channel=channel, title="second multi", url="http://example/dl.php/54321/config_string/second+multi.jpg", indexer="Multi", backends=["my_sonarr"], snatches=["my_sonarr"], ) backends.send_approved("my_sonarr", True) irc.announce(release) irc.announce(release) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.max_announcements(self, "my_radarr", 0) backends.max_announcements(self, "my_lidarr", 0) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 1) misc.check_announced( self, config, release, )
def test_renotify_missing_radarr(self): release = Release( messages=["son snatch2 - /horsie/ ¤/(- #calm# - pasta"], channel=channel, title="son snatch2", url="animal: horsie &mood=calm f1: first_fixed f2: fixed_second", indexer="Single", backends=["my_sonarr"], ) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.max_announcements(self, "my_radarr", 0) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, ) browser.renotify(self, config, table_row=1, backend="my_sonarr", success=False) # Causes connection refused browser.renotify( self, config, table_row=1, backend="missing_radarr", success=False ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0)
def test_no_snatch(self): release = Release( messages=[ "Old: multi title", "Category: color tree fruit;", "PATH: https://example/f?id=12345", ], channel=channel, title="multi title", url="http://example/dl.php/12345/config_string/multi+title.jpg", indexer="Multi", backends=config.backends.keys(), ) irc.announce(release, wait=0.5) backends.max_announcements(self, "my_sonarr", 0) backends.max_announcements(self, "my_radarr", 0) backends.max_announcements(self, "my_lidarr", 0) self.assertEqual(db.nr_announcements(), 0) self.assertEqual(db.nr_snatches(), 0) irc.announce(release, wait=0.5) backends.max_announcements(self, "my_sonarr", 0) backends.max_announcements(self, "my_radarr", 0) backends.max_announcements(self, "my_lidarr", 0) self.assertEqual(db.nr_announcements(), 0) self.assertEqual(db.nr_snatches(), 0) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.check_first_rx( self, config.backends["my_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_no_snatch(self): release = Release( messages=["title 1 - stuff 1"], channel=channel, title="title 1", url="stuff: stuff 1", indexer="Delay", backends=config.backends.keys(), ) irc.announce(release) time.sleep(7) backends.max_announcements(self, "delayed_sonarr", 0) backends.max_announcements(self, "delayed_radarr", 0) backends.max_announcements(self, "delayed_lidarr", 0) time.sleep(2) backends.check_first_rx( self, config.backends["delayed_sonarr"], release, ) backends.check_first_rx( self, config.backends["delayed_radarr"], release, ) backends.check_first_rx( self, config.backends["delayed_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_non_capture_with_match(self): release = Release( messages=[ "Old: some title", "Category: color tree fruit; misc stuff", "PATH: https://example/f?id=1357", ], channel=channel, title="some title", url="http://example/dl.php/1357/config_string/some+title.jpg", indexer="Multi", backends=config.backends.keys(), ) irc.announce(release) irc.announce(release) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.check_first_rx( self, config.backends["my_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_no_snatch_second_pattern(self): release = Release( messages=[ "this is some name - -donkey- ; =grumpy= - food: pizza" ], channel=channel, title="this is some name", url="animal: donkey &mood=grumpy f1: first_fixed f2: fixed_second", indexer="Single", backends=config.backends.keys(), ) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.check_first_rx( self, config.backends["my_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_non_capture_group_without_match(self): release = Release( messages=["yet a name - monkey - frustrated -"], channel=channel, title="yet a name", url= "animal: monkey &mood=frustrated f1: first_fixed f2: fixed_second", indexer="Single", backends=config.backends.keys(), ) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.check_first_rx( self, config.backends["my_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_non_capture_group_with_match(self): release = Release( messages=["naaame - bat - splendid - [apple]"], channel=channel, title="naaame", url="animal: bat &mood=splendid f1: first_fixed f2: fixed_second", indexer="Single", backends=config.backends.keys(), ) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.check_first_rx( self, config.backends["my_lidarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 0) misc.check_announced( self, config, release, )
def test_renotify_radarr(self): release = Release( messages=["son snatch2 - /horsie/ ¤/(- #calm# - pasta"], channel=channel, title="son snatch2", url="animal: horsie &mood=calm f1: first_fixed f2: fixed_second", indexer="Single", backends=config.backends.keys(), snatches=["my_sonarr"], ) backends.send_approved("my_sonarr", True) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_sonarr"], release, ) backends.max_announcements(self, "my_radarr", 1) backends.max_announcements(self, "my_lidarr", 1) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 1) misc.check_announced( self, config, release, ) backends.send_approved("my_radarr", True) browser.renotify(self, config, table_row=1, backend="my_sonarr", success=False) browser.renotify(self, config, table_row=1, backend="my_lidarr", success=False) browser.renotify(self, config, table_row=1, backend="my_radarr", success=True) release.snatches.append("my_radarr") backends.check_first_rx( self, config.backends["my_radarr"], release, ) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 2) misc.check_announced( self, config, release, )
def test_renotify_lidarr(self): release = Release( messages=[ "Old: third ", "Category: fruit;", "PATH: https://ex/a?id=99" ], channel=channel, title="third", url="http://ex/dl.php/99/config_string/third.jpg", indexer="Multi", backends=["my_radarr"], snatches=["my_radarr"], ) backends.send_approved("my_radarr", True) irc.announce(release) irc.announce(release) misc.announce_await_push(self, release) backends.check_first_rx( self, config.backends["my_radarr"], release, ) backends.max_announcements(self, "my_sonarr", 0) backends.max_announcements(self, "my_lidarr", 0) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 1) misc.check_announced( self, config, release, ) backends.send_approved("my_lidarr", True) browser.renotify(self, config, table_row=1, backend="my_sonarr", success=False) browser.renotify(self, config, table_row=1, backend="my_radarr", success=False) browser.renotify(self, config, table_row=1, backend="my_lidarr", success=True) release.snatches.append("my_lidarr") backends.check_first_rx( self, config.backends["my_lidarr"], release, ) backends.max_announcements(self, "my_sonarr", 1) backends.max_announcements(self, "my_radarr", 1) self.assertEqual(db.nr_announcements(), 1) self.assertEqual(db.nr_snatches(), 2) misc.check_announced( self, config, release, )