def match(cls, result, user): # Apply global filters if not Filters.is_valid_user(user): # User didn't pass filters, update `account` attribute and return result['account'] = None return True, result # Find matching `UserRule` rule = (UserRule.select().where((UserRule.name == user['title']) | (UserRule.name == '*') | (UserRule.name == None)).order_by( UserRule.priority.asc()).first()) log.debug('Activity matched against rule: %r', rule) if rule: # Process rule if rule.account_function is not None: result['account'] = cls.account_function(user, rule) elif rule.account_id is not None: result['account'] = rule.account_id else: return True, result else: result['account'] = None return False, result
def match(cls, result, user): # Apply global filters if not Filters.is_valid_user(user): # User didn't pass filters, update `account` attribute and return result['account'] = None return True, result # Find matching `UserRule` rule = (UserRule .select() .where( (UserRule.name == user['title']) | (UserRule.name == '*') | (UserRule.name == None) ) .order_by( UserRule.priority.asc() ) .first() ) log.debug('Activity matched against rule: %r', rule) if rule: # Process rule if rule.account_function is not None: result['account'] = cls.account_function(user, rule) elif rule.account_id is not None: result['account'] = rule.account_id else: return True, result else: result['account'] = None return False, result
def test_user_empty(): Environment.prefs['scrobble_names'] = '' assert Filters.is_valid_user({'title': 'one'}) is True
def test_user_inverted(): Environment.prefs['scrobble_names'] = 'one, -two' assert Filters.is_valid_user({'title': 'one'}) is True assert Filters.is_valid_user({'title': 'two'}) is False
def test_missing_preference(): Environment.prefs['scrobble_names'] = None assert Filters.is_valid_user({'title': 'one'}) is True
def test_user_empty(): Environment.prefs["scrobble_names"] = "" assert Filters.is_valid_user({"title": "one"}) is True
def test_user_inverted(): Environment.prefs["scrobble_names"] = "one, -two" assert Filters.is_valid_user({"title": "one"}) is True assert Filters.is_valid_user({"title": "two"}) is False
def test_missing_preference(): Environment.prefs["scrobble_names"] = None assert Filters.is_valid_user({"title": "one"}) is True