def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) validate(self.params, self.get_schema()) if self.params.get('topic'): DBUtil.validate_topic(self.dynamodb, self.params['topic'])
def test_cast_parameter_to_int(self): schema = { 'properties': { 'limit': { 'type': 'integer' }, 'article_id': { 'type': 'string' }, 'sort_key': { 'type': 'integer' } } } params = { 'limit': '100', 'article_id': '150', 'sort_key': 'ALIS', 'other_key': '150' } ParameterUtil.cast_parameter_to_int(params, schema) expected_params = { 'limit': 100, 'article_id': '150', 'sort_key': 'ALIS', 'other_key': '150' } self.assertEqual(params, expected_params)
def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) validate(self.params, self.get_schema()) user_id = self.event['requestContext']['authorizer']['claims']['cognito:username'] if not AuthleteUtil.is_accessible_client(self.params['client_id'], user_id): raise NoPermissionError('No permission on this resource')
def test_validate_array_unique_ok_with_case_insensitive(self): target_items = ["FOO", "BAR", "BAZ"] try: ParameterUtil.validate_array_unique(target_items, 'tags', case_insensitive=True) except ValidationError: self.fail('expected no error is raised')
def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) UserUtil.verified_phone_and_email(self.event) validate(self.params, self.get_schema()) DBUtil.validate_article_existence( self.dynamodb, self.event['pathParameters']['article_id'], user_id=self.event['requestContext']['authorizer']['claims'] ['cognito:username'])
def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) validate(self.params, self.get_schema()) self.params['start'] = self.params.get('start', 0) self.params['end'] = self.params.get('end', 5) count = self.params['end'] - self.params['start'] if count > 100: raise ValidationError('displayed items are over 100') if count < 1: raise ValidationError('displayed items are less than 1')
def validate_params(self): params = self.event.get('pathParameters') if params is None: raise ValidationError('pathParameters is required') if self.event.get('queryStringParameters') is not None: params.update(self.event.get('queryStringParameters')) ParameterUtil.cast_parameter_to_int(params, self.get_schema()) validate(params, self.get_schema())
def validate_params(self): validate(self.params, self.get_schema()) if self.params.get('tags'): ParameterUtil.validate_array_unique(self.params['tags'], 'tags', case_insensitive=True) TagUtil.validate_format(self.params['tags']) DBUtil.validate_article_existence( self.dynamodb, self.params['article_id'], user_id=self.event['requestContext']['authorizer']['claims'] ['cognito:username'], status='draft') DBUtil.validate_topic(self.dynamodb, self.params['topic'])
def validate_params(self): if self.event.get('pathParameters') is None: raise ValidationError('pathParameters is required') validate(self.params, self.get_schema()) if self.params.get('tags'): ParameterUtil.validate_array_unique(self.params['tags'], 'tags', case_insensitive=True) TagUtil.validate_format(self.params['tags']) DBUtil.validate_article_existence( self.dynamodb, self.params['article_id'], user_id=self.event['requestContext']['authorizer']['claims']['cognito:username'], status='public' ) DBUtil.validate_topic(self.dynamodb, self.params['topic'])
def validate_params(self): UserUtil.verified_phone_and_email(self.event) if self.event['requestContext']['authorizer']['claims'].get( 'custom:private_eth_address') is None: raise ValidationError('not exists private_eth_address') validate(self.params, self.get_schema()) if self.params.get('tags'): ParameterUtil.validate_array_unique(self.params['tags'], 'tags', case_insensitive=True) TagUtil.validate_format(self.params['tags']) DBUtil.validate_article_existence( self.dynamodb, self.params['article_id'], user_id=self.event['requestContext']['authorizer']['claims'] ['cognito:username'], status='draft') DBUtil.validate_topic(self.dynamodb, self.params['topic'])
def test_validate_price_through(self): price = 1 * (10**18) self.assertTrue(ParameterUtil.validate_price_params(price))
def test_validate_price_params_ng_decimal(self): price = 1 * (10**18) + 1 * (10**17) with self.assertRaises(ValidationError): ParameterUtil.validate_price_params(price)
def test_validate_price_params_ng_string(self): price = 'AAAA' with self.assertRaises(ValidationError): ParameterUtil.validate_price_params(price)
def test_validate_array_unique_with_not_unique(self): target_items = ["FOO", "BAR", "FOO"] with self.assertRaises(ValidationError): ParameterUtil.validate_array_unique(target_items, 'tags')
def test_validate_array_unique_with_not_unique_case_insensitive(self): target_items = ["FOO", "BAR", "foo"] with self.assertRaises(ValidationError): ParameterUtil.validate_array_unique(target_items, 'tags', case_insensitive=True)
def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) self.params['tags'] = self.event[ 'multiValueQueryStringParameters'].get('tags') validate(self.params, self.get_schema())
def validate_params(self): ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) validate(self.params, self.get_schema())
def validate_params(self): UserUtil.verified_phone_and_email(self.event) ParameterUtil.cast_parameter_to_int(self.params, self.get_schema()) validate(self.params, self.get_schema())