当前位置: 首页>>代码示例>>Python>>正文


Python BlogpostFactory.create_batch方法代码示例

本文整理汇总了Python中factories.BlogpostFactory.create_batch方法的典型用法代码示例。如果您正苦于以下问题:Python BlogpostFactory.create_batch方法的具体用法?Python BlogpostFactory.create_batch怎么用?Python BlogpostFactory.create_batch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在factories.BlogpostFactory的用法示例。


在下文中一共展示了BlogpostFactory.create_batch方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: test_filter_by_one_condition

# 需要导入模块: from factories import BlogpostFactory [as 别名]
# 或者: from factories.BlogpostFactory import create_batch [as 别名]
    def test_filter_by_one_condition(self):
        """Test filter_by returns a list of blogposts that meet the filtering
        condition"""

        BlogpostFactory.create_batch(3, title='my blogpost')
        should_be_missing = BlogpostFactory.create(title='another blogpost')

        retrieved_blogposts = self.blog_repo.filter_by(title='my blogpost')

        assert len(retrieved_blogposts) == 3, retrieved_blogposts
        assert should_be_missing not in retrieved_blogposts, retrieved_blogposts
开发者ID:PyBossa,项目名称:pybossa,代码行数:13,代码来源:test_blog_repository.py

示例2: test_filter_by_limit_offset

# 需要导入模块: from factories import BlogpostFactory [as 别名]
# 或者: from factories.BlogpostFactory import create_batch [as 别名]
    def test_filter_by_limit_offset(self):
        """Test that filter_by supports limit and offset options"""

        BlogpostFactory.create_batch(4)
        all_blogposts = self.blog_repo.filter_by()

        first_two = self.blog_repo.filter_by(limit=2)
        last_two = self.blog_repo.filter_by(limit=2, offset=2)

        assert len(first_two) == 2, first_two
        assert len(last_two) == 2, last_two
        assert first_two == all_blogposts[:2]
        assert last_two == all_blogposts[2:]
开发者ID:PyBossa,项目名称:pybossa,代码行数:15,代码来源:test_blog_repository.py

示例3: test_blogpost_query_list_project_ids

# 需要导入模块: from factories import BlogpostFactory [as 别名]
# 或者: from factories.BlogpostFactory import create_batch [as 别名]
    def test_blogpost_query_list_project_ids(self):
        """Get a list of blogposts using a list of project_ids."""
        projects = ProjectFactory.create_batch(3)
        blogposts = []
        for project in projects:
            tmp = BlogpostFactory.create_batch(2, project=project)
            for t in tmp:
                blogposts.append(t)

        project_ids = [project.id for project in projects]
        url = '/api/blogpost?project_id=%s&limit=100' % project_ids
        res = self.app.get(url)
        data = json.loads(res.data)
        assert len(data) == 3 * 2, len(data)
        for blog in data:
            assert blog['project_id'] in project_ids
        blogpost_project_ids = list(set([blog['project_id'] for blog in data]))
        assert sorted(project_ids) == sorted(blogpost_project_ids)

        # more filters
        res = self.app.get(url + '&orderby=created&desc=true')
        data = json.loads(res.data)
        assert data[0]['id'] == blogposts[-1].id
开发者ID:PyBossa,项目名称:pybossa,代码行数:25,代码来源:test_api_blogpost.py

示例4: test_query_blogpost

# 需要导入模块: from factories import BlogpostFactory [as 别名]
# 或者: from factories.BlogpostFactory import create_batch [as 别名]
    def test_query_blogpost(self):
        """Test API query for blogpost endpoint works"""
        owner = UserFactory.create()
        user = UserFactory.create()
        project = ProjectFactory(owner=owner)
        blogposts = BlogpostFactory.create_batch(9)
        blogpost = BlogpostFactory.create(project=project)

        # As anon
        url = '/api/blogpost'
        res = self.app.get(url)
        data = json.loads(res.data)
        assert len(data) == 10, data
        assert data[9]['user_id'] == owner.id

        # As user
        res = self.app.get(url + '?api_key=' + user.api_key)
        data = json.loads(res.data)
        assert len(data) == 0, data

        # As owner
        res = self.app.get(url + '?api_key=' + owner.api_key)
        data = json.loads(res.data)
        assert len(data) == 1, data
        assert data[0]['user_id'] == owner.id

        # Valid field but wrong value
        res = self.app.get(url + "?title=wrongvalue")
        data = json.loads(res.data)
        assert len(data) == 0, data

        # Multiple fields
        res = self.app.get(url + '?title=' + blogpost.title  + '&body=' + blogpost.body)
        data = json.loads(res.data)
        # One result
        assert len(data) == 10, data
        # Correct result
        assert data[0]['title'] == blogpost.title, data
        assert data[0]['body'] == blogpost.body, data
        assert data[0]['media_url'] == blogpost.media_url, data

        # Limits
        res = self.app.get(url + "?limit=1")
        data = json.loads(res.data)
        for item in data:
            assert item['title'] == blogpost.title, item
        assert len(data) == 1, data

        # Keyset pagination
        res = self.app.get(url + '?limit=1&last_id=' + str(blogposts[8].id))
        data = json.loads(res.data)
        assert len(data) == 1, len(data)
        assert data[0]['id'] == blogpost.id

        # Errors
        res = self.app.get(url + "?something")
        err = json.loads(res.data)
        err_msg = "AttributeError exception should be raised"
        res.status_code == 415, err_msg
        assert res.status_code == 415, err_msg
        assert err['action'] == 'GET', err_msg
        assert err['status'] == 'failed', err_msg
        assert err['exception_cls'] == 'AttributeError', err_msg

        # Desc filter
        url = "/api/blogpost?orderby=wrongattribute"
        res = self.app.get(url)
        data = json.loads(res.data)
        err_msg = "It should be 415."
        assert data['status'] == 'failed', data
        assert data['status_code'] == 415, data
        assert 'has no attribute' in data['exception_msg'], data

        # Desc filter
        url = "/api/blogpost?orderby=id"
        res = self.app.get(url)
        data = json.loads(res.data)
        err_msg = "It should get the last item first."
        blogposts.append(blogpost)
        blogposts_by_id = sorted(blogposts, key=lambda x: x.id, reverse=False)
        for i in range(len(blogposts)):
            assert blogposts_by_id[i].id == data[i]['id']

        # Desc filter
        url = "/api/blogpost?orderby=id&desc=true"
        res = self.app.get(url)
        data = json.loads(res.data)
        err_msg = "It should get the last item first."
        blogposts_by_id = sorted(blogposts, key=lambda x: x.id, reverse=True)
        for i in range(len(blogposts)):
            assert blogposts_by_id[i].id == data[i]['id']
开发者ID:PyBossa,项目名称:pybossa,代码行数:93,代码来源:test_api_blogpost.py


注:本文中的factories.BlogpostFactory.create_batch方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。