test_couch.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:openag_brain 作者: OpenAgInitiative 项目源码 文件源码
def test_push_design_documents():
    server = BootstrapServer("http://test.test:5984")

    tempdir = tempfile.mkdtemp()
    try:
        test_db_path = os.path.join(tempdir, "test")
        os.mkdir(test_db_path)
        hidden_db_path = os.path.join(tempdir, ".test")
        os.mkdir(hidden_db_path)
        views_path = os.path.join(test_db_path, "views")
        os.mkdir(views_path)
        test_view_path = os.path.join(views_path, "test")
        os.mkdir(test_view_path)
        map_path = os.path.join(test_view_path, "map.js")
        with open(map_path, "w+") as f:
            f.write("test")
        hidden_map_path = os.path.join(test_view_path, ".test.js")
        with open(hidden_map_path, "w+") as f:
            f.write("test")

        httpretty.register_uri(
            httpretty.HEAD, "http://test.test:5984/test"
        )
        def create_design_doc(request, uri, headers):
            obj = {
                "_id": "_design/openag",
                "views": {
                    "test": {
                        "map": "test"
                    }
                }
            }
            if json.loads(request.body) == obj:
                return 200, headers, json.dumps({
                    "id": "_design/openag",
                    "rev": "a"
                })
            else:
                return 500, headers, ""
        httpretty.register_uri(
            httpretty.HEAD, "http://test.test:5984/test/_design/openag",
            status=404
        )
        httpretty.register_uri(
            httpretty.PUT, "http://test.test:5984/test/_design/openag",
            body=create_design_doc, content_type="application/json"
        )
        server.push_design_documents(tempdir)
    finally:
        shutil.rmtree(tempdir)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号