`
tailorcai
  • 浏览: 91683 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

基于django0.96的自动测试功能的Login增强

阅读更多
0.96不支持client对象,先Login再提交数据。因此,参照trunk,改写了Client
    def login_new(self, **credentials):
        """Set the Client to appear as if it has sucessfully logged into a site.

        Returns True if login is possible; False if the provided credentials
        are incorrect, or the user is inactive, or if the sessions framework is
        not available.
        """
        user = authenticate(**credentials)
        if user and user.is_active and 'django.contrib.sessions' in settings.INSTALLED_APPS:
            #engine = __import__(settings.SESSION_ENGINE, {}, {}, [''])

            # Create a fake request to store login details
            request = HttpRequest()
            #request.session = engine.SessionStore()
            from django.contrib.sessions.middleware import SessionMiddleware
            SessionMiddleware().process_request( request )
            login(request, user)

            obj = Session.objects.get_new_session_object()
            session_key = obj.session_key
            
            # Set the cookie to represent the session
            self.cookies[settings.SESSION_COOKIE_NAME] = session_key
            self.cookies[settings.SESSION_COOKIE_NAME]['max-age'] = None
            self.cookies[settings.SESSION_COOKIE_NAME]['path'] = '/'
            self.cookies[settings.SESSION_COOKIE_NAME]['domain'] = settings.SESSION_COOKIE_DOMAIN
            self.cookies[settings.SESSION_COOKIE_NAME]['secure'] = settings.SESSION_COOKIE_SECURE or None
            self.cookies[settings.SESSION_COOKIE_NAME]['expires'] = None

            # Save the session values
            #request.session.save()
            new_session = Session.objects.save(session_key, request.session._session,
                    datetime.datetime.now() + datetime.timedelta(seconds=settings.SESSION_COOKIE_AGE))

            return True
        else:
            return False

分享到:
评论

相关推荐

    基于django的自动化测试平台源码+项目说明.zip

    基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台源码+项目说明.zip基于django的自动化测试平台...

    python课程设计基于Django的学生心理测试系统源码+数据库.zip

    python课程设计基于Django的学生心理测试系统源码+数据库。获老师指导已通过的高分项目。python课程设计基于Django的学生心理测试系统源码+数据库。获老师指导已通过的高分项目。python课程设计基于Django的学生心理...

    基于Django的个人网盘源码.zip

    基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django...

    Python基于Django的就业系统源码.zip

    基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于...

    基于Django的交通设施运维管理系统设计

    基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施运维管理系统设计基于Django的交通设施...

    基于Django的国内疫情数据可视化Web系统源码.zip

    基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视化Web系统源码 基于Django的国内疫情数据可视...

    python基于django的图书推荐系统源码.zip

    python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django的图书推荐系统源码 python基于django...

    基于Django的疫情上报系统源码.zip

    基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的疫情上报系统源码 基于Django的...

    Python基于Django框架实现的一个学生信息管理系统源码.zip

    Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于Django框架实现的一个学生信息管理系统源码 Python基于...

    基于django的超市管理系统

    基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于django的超市管理系统基于...

    基于DJango开发的仓库管理系统源码.zip

    基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、django 2.2、MySQL 基于DJango开发的仓库管理系统,软件架构:python 3.5、...

    基于Django的图书管理系统源码+数据库.zip

    基于Django的图书管理系统源码+数据库,基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理系统源码+数据库基于Django的图书管理...

    Python基于Django学生宿舍管理系统源码.zip

    Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于Django学生宿舍管理系统源码 Python基于...

    基于Django3.0.5+Python3.7+SQLite的博客系统源码.zip

    基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于Django3.0.5+Python3.7+SQLite的博客系统源码 基于...

    python课程设计基于Django实现的电子商城系统源码.zip

    python课程设计基于Django实现的电子商城系统源码,数据库MySQL 包括注册、登录、购物车、订单中心、管理员管理商品、管理员管理用户等功能 管理员账号:admin 管理员密码:admin python课程设计基于Django实现的...

    Python基于 Django 3 的网盘系统【源码】.zip

    Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于 Django 3 的网盘系统【源码】Python基于...

    Python基于Django的图书管理系统源码.zip

    Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于Django的图书管理系统源码 Python基于...

    Python基于Django的旅游信息管理系统源码

    Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于Django的旅游信息管理系统源码Python基于...

    Python毕业设计 基于Django的自动化测试管理系统设计与实现源码+详细文档+全部资料(高分项目).zip

    Python毕业设计 基于Django的自动化测试管理系统设计与实现源码+详细文档+全部资料(高分项目).zipPython毕业设计 基于Django的自动化测试管理系统设计与实现源码+详细文档+全部资料(高分项目).zip 【备注】 1、...

    Python基于Django的实战项目源码——美多商城.zip

    Python基于Django的实战项目源码——美多商城 Python基于Django的实战项目源码——美多商城 Python基于Django的实战项目源码——美多商城 Python基于Django的实战项目源码——美多商城 Python基于Django的...

Global site tag (gtag.js) - Google Analytics