def test_rate_limiter_handles_IndexError(self): nsinstance = Nationstates("world") nsinstance.rltime = list(range(50)) try: nsinstance.ratelimitcheck() except IndexError as err: self.fail(str(err))
def test_rate_limiting_check_isFalse(self): """This Tests whether or Not the rate limiter catches a rate limit break """ nsinstance = Nationstates("world") ct = time() nsinstance.rltime = [(ct+x) for x in range(50)] self.assertFalse(nsinstance.ratelimitcheck(xrls=50)) nationstates.__rltime__ = []
def lambda_handler(event, context): _ = event, context api = Nationstates(f'{NATION} Decision Engine') nation = api.nation(NATION, password=PASSWORD) shard = nation.request(['issues'], None) issues = (shard.get('issues') or {}).get('issue', []) if isinstance(issues, NSDict): issues = [issues] for issue in issues: choice = random.choice(issue.get('option', [])) r = nation.pick_issue(issue['id'], choice['id']) urlopen( Request(WEBHOOK, data=json.dumps({ 'text': f'In {NATION}, {r}' }).encode('utf-8'))) return { 'statusCode': 200, }
def test_rate_limiting_check_isTrue(self): nsinstance = Nationstates("world") ct = time() nsinstance.rltime = [(ct+x) for x in range(47)] self.assertTrue(nsinstance.ratelimitcheck(xrls=47))