コード例 #1
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_proxies_group_lookup_to_service_for_unauth(self, unauthenticated_request):
        svc = unauthenticated_request.find_service(name='list_groups')

        session.model(unauthenticated_request)

        svc.session_groups.assert_called_once_with(authority=unauthenticated_request.authority,
                                                   user=None)
コード例 #2
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_proxies_group_lookup_to_service(self, authenticated_request):
        svc = authenticated_request.find_service(name='list_groups')

        session.model(authenticated_request)

        svc.session_groups.assert_called_once_with(user=authenticated_request.user,
                                                   authority=authenticated_request.authority)
コード例 #3
0
    def test_proxies_group_lookup_to_service(self, authenticated_request):
        svc = authenticated_request.find_service(name='list_groups')

        session.model(authenticated_request)

        svc.session_groups.assert_called_once_with(user=authenticated_request.user,
                                                   authority=authenticated_request.authority)
コード例 #4
0
    def test_proxies_group_lookup_to_service_for_unauth(self, unauthenticated_request):
        svc = unauthenticated_request.find_service(name='list_groups')

        session.model(unauthenticated_request)

        svc.session_groups.assert_called_once_with(authority=unauthenticated_request.authority,
                                                   user=None)
コード例 #5
0
    def test_proxies_sorting_to_service(self, authenticated_request):
        authenticated_request.set_groups([
            FakeGroup('c', 'Group A'),
            FakeGroup('b', 'Group B'),
            FakeGroup('a', 'Group B'),
        ])
        session.model(authenticated_request)

        authenticated_request._profile_group_service.sort.assert_called_once()
コード例 #6
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_private_group_has_url(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

        model = session.model(authenticated_request)
        private_group = [g for g in model['groups'] if g['id'] == 'a'][0]

        assert private_group['url']
コード例 #7
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_private_group_is_not_public(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

        model = session.model(authenticated_request)
        private_group = [g for g in model['groups'] if g['id'] == 'a'][0]

        assert private_group['public'] is False
コード例 #8
0
def _publish(request, event_type, groupid, userid):
    request.realtime.publish_user({
        "type": event_type,
        "session_model": session.model(request),
        "userid": userid,
        "group": groupid,
    })
コード例 #9
0
    def test_private_group_is_not_public(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

        model = session.model(authenticated_request)
        private_group = [g for g in model['groups'] if g['id'] == 'a'][0]

        assert private_group['public'] is False
コード例 #10
0
    def test_private_group_has_url(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

        model = session.model(authenticated_request)
        private_group = [g for g in model['groups'] if g['id'] == 'a'][0]

        assert private_group['url']
コード例 #11
0
ファイル: session_test.py プロジェクト: chr7stos/Webmarks
def test_model_show_sidebar_tutorial(
        fake_user, feature_enabled, user_authenticated, tutorial_dismissed,
        show_tutorial):
    """It should return or not return "show_sidebar_tutorial" correctly.

    It should return "show_sidebar_tutorial": True only if the sidebar_tutorial
    feature flag is on, a user is authorized _and_ that user has not dismissed
    the tutorial. Otherwise, preferences should contain no
    "show_sidebar_tutorial" value at all.

    """
    fake_user.sidebar_tutorial_dismissed = tutorial_dismissed
    if user_authenticated:
        authenticated_user = fake_user
    else:
        authenticated_user = None
    request = mock.Mock(
        authenticated_user=authenticated_user,
        feature=mock.Mock(return_value=feature_enabled))

    preferences = session.model(request)['preferences']

    if show_tutorial:
        assert preferences['show_sidebar_tutorial'] is True
    else:
        assert 'show_sidebar_tutorial' not in preferences
コード例 #12
0
def test_model_show_sidebar_tutorial(
        fake_user, user_authenticated, tutorial_dismissed, show_tutorial):
    """It should return or not return "show_sidebar_tutorial" correctly.

    It should return "show_sidebar_tutorial": True only if a user
    is authorized _and_ that user has not dismissed
    the tutorial. Otherwise, preferences should contain no
    "show_sidebar_tutorial" value at all.

    """
    fake_user.sidebar_tutorial_dismissed = tutorial_dismissed
    if user_authenticated:
        authenticated_user = fake_user
    else:
        authenticated_user = None
    request = mock.Mock(
        authenticated_user=authenticated_user,
        )

    preferences = session.model(request)['preferences']

    if show_tutorial:
        assert preferences['show_sidebar_tutorial'] is True
    else:
        assert 'show_sidebar_tutorial' not in preferences
コード例 #13
0
def _publish(request, event_type, groupid, userid):
    request.realtime.publish_user({
        'type': event_type,
        'session_model': session.model(request),
        'userid': userid,
        'group': groupid,
    })
コード例 #14
0
    def test_open_group_has_no_url(self, unauthenticated_request, world_group):
        svc = unauthenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [world_group]

        model = session.model(unauthenticated_request)

        assert not model['groups'][0].get('url')
コード例 #15
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_open_group_has_no_url(self, unauthenticated_request, world_group):
        svc = unauthenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [world_group]

        model = session.model(unauthenticated_request)

        assert not model['groups'][0].get('url')
コード例 #16
0
ファイル: group.py プロジェクト: DannyMcwaves/h
def _publish(request, event_type, groupid, userid):
    request.realtime.publish_user({
        'type': event_type,
        'session_model': session.model(request),
        'userid': userid,
        'group': groupid,
    })
コード例 #17
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_open_group_is_public(self, unauthenticated_request, world_group):
        svc = unauthenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [world_group]

        model = session.model(unauthenticated_request)

        assert model['groups'][0]['public']
コード例 #18
0
def ajax_payload(request, data):
    payload = {
        'flash': session.pop_flash(request),
        'model': session.model(request)
    }
    payload.update(data)
    return payload
コード例 #19
0
    def test_open_group_is_public(self, unauthenticated_request, world_group):
        svc = unauthenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [world_group]

        model = session.model(unauthenticated_request)

        assert model['groups'][0]['public']
コード例 #20
0
ファイル: accounts.py プロジェクト: Manuelinux/kubeh
def ajax_payload(request, data):
    payload = {
        "flash": session.pop_flash(request),
        "model": session.model(request)
    }
    payload.update(data)
    return payload
コード例 #21
0
ファイル: views.py プロジェクト: hylhero/h
def bad_csrf_token(context, request):
    request.response.status_code = 403
    reason = _('Session is invalid. Please try again.')
    return {
        'status': 'failure',
        'reason': reason,
        'model': session.model(request),
    }
コード例 #22
0
    def test_includes_features(self, authenticated_request):
        feature_dict = {
            'feature_one': True,
            'feature_two': False,
        }
        authenticated_request.set_features(feature_dict)

        assert session.model(authenticated_request)['features'] == feature_dict
コード例 #23
0
ファイル: accounts.py プロジェクト: Manuelinux/kubeh
def bad_csrf_token_json(context, request):
    request.response.status_code = 403
    reason = _("Session is invalid. Please try again.")
    return {
        "status": "failure",
        "reason": reason,
        "model": session.model(request)
    }
コード例 #24
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_includes_features(self, authenticated_request):
        feature_dict = {
            'feature_one': True,
            'feature_two': False,
        }
        authenticated_request.set_features(feature_dict)

        assert session.model(authenticated_request)['features'] == feature_dict
コード例 #25
0
ファイル: session_test.py プロジェクト: openbizgit/h
def test_includes_features(features, fake_user):
    feature_dict = {
        'feature_one': True,
        'feature_two': False,
    }
    features.all = Mock(return_value=feature_dict)
    request = Mock(authenticated_user=fake_user)
    assert model(request)['features'] == feature_dict
コード例 #26
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_private_group_has_url(self, authenticated_request, factories):
        a_group = factories.Group()
        svc = authenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [a_group]

        model = session.model(authenticated_request)

        assert model['groups'][0]['url']
コード例 #27
0
def bad_csrf_token(context, request):
    request.response.status_code = 403
    reason = _('Session is invalid. Please try again.')
    return {
        'status': 'failure',
        'reason': reason,
        'model': session.model(request),
    }
コード例 #28
0
    def test_private_group_has_url(self, authenticated_request, factories):
        a_group = factories.Group()
        svc = authenticated_request.find_service(name='list_groups')
        svc.session_groups.return_value = [a_group]

        model = session.model(authenticated_request)

        assert model['groups'][0]['url']
コード例 #29
0
ファイル: session_test.py プロジェクト: hypothesis/h
    def test_private_group_is_not_public(self, authenticated_request, factories):
        a_group = factories.Group()
        svc = authenticated_request.find_service(name="group_list")
        svc.session_groups.return_value = [a_group]

        model = session.model(authenticated_request)

        assert not model["groups"][0]["public"]
コード例 #30
0
ファイル: views.py プロジェクト: Treora/h
 def wrapper(context, request):
     request.add_response_callback(session.set_csrf_token)
     if request.method == 'POST':
         data = request.json_body
         data.update(request.params)
         request.content_type = 'application/x-www-form-urlencoded'
         request.POST.clear()
         request.POST.update(data)
     inst = view(request)
     meth = getattr(inst, self.attr)
     result = meth()
     result = ajax_form(request, result)
     if 'model' in result:
         result['model'].update(session.model(request))
     else:
         result['model'] = session.model(request)
     result.pop('form', None)
     return result
コード例 #31
0
    def test_private_group_is_not_public(self, authenticated_request,
                                         factories):
        a_group = factories.Group()
        svc = authenticated_request.find_service(name='list_groups')
        svc.all_groups.return_value = [a_group]

        model = session.model(authenticated_request)

        assert not model['groups'][0]['public']
コード例 #32
0
ファイル: session_test.py プロジェクト: Cinemacloud/h
def test_model_includes_features(fake_user):
    feature_dict = {
        'feature_one': True,
        'feature_two': False,
    }
    request = mock.Mock(authenticated_user=fake_user)
    request.feature.all.return_value = feature_dict

    assert session.model(request)['features'] == feature_dict
コード例 #33
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_authenticated_sidebar_tutorial(self, authenticated_request, dismissed):
        authenticated_request.set_sidebar_tutorial_dismissed(dismissed)

        preferences = session.model(authenticated_request)['preferences']

        if dismissed:
            assert 'show_sidebar_tutorial' not in preferences
        else:
            assert preferences['show_sidebar_tutorial'] is True
コード例 #34
0
ファイル: group_members.py プロジェクト: hypothesis/h
def _publish(request, event_type, groupid, userid):
    request.realtime.publish_user(
        {
            "type": event_type,
            "session_model": session.model(request),
            "userid": userid,
            "group": groupid,
        }
    )
コード例 #35
0
ファイル: session_test.py プロジェクト: ssin122/test-h
def test_model_includes_features(fake_user):
    feature_dict = {
        'feature_one': True,
        'feature_two': False,
    }
    request = mock.Mock(authenticated_user=fake_user)
    request.feature.all.return_value = feature_dict

    assert session.model(request)['features'] == feature_dict
コード例 #36
0
 def wrapper(context, request):
     request.add_response_callback(session.set_csrf_token)
     if request.method == 'POST':
         data = request.json_body
         data.update(request.params)
         request.content_type = 'application/x-www-form-urlencoded'
         request.POST.clear()
         request.POST.update(data)
     inst = view(request)
     meth = getattr(inst, self.attr)
     result = meth()
     result = ajax_form(request, result)
     if 'model' in result:
         result['model'].update(session.model(request))
     else:
         result['model'] = session.model(request)
     result.pop('form', None)
     return result
コード例 #37
0
ファイル: session_test.py プロジェクト: zhiiker/hypothesis
    def test_private_group_is_not_public(self, authenticated_request,
                                         factories):
        a_group = factories.Group()
        svc = authenticated_request.find_service(name="group_list")
        svc.session_groups.return_value = [a_group]

        model = session.model(authenticated_request)

        assert not model["groups"][0]["public"]
コード例 #38
0
    def test_authenticated_sidebar_tutorial(self, authenticated_request, dismissed):
        authenticated_request.set_sidebar_tutorial_dismissed(dismissed)

        preferences = session.model(authenticated_request)['preferences']

        if dismissed:
            assert 'show_sidebar_tutorial' not in preferences
        else:
            assert preferences['show_sidebar_tutorial'] is True
コード例 #39
0
    def test_sorts_groups(self, authenticated_request):
        authenticated_request.set_groups([
            FakeGroup('c', 'Group A'),
            FakeGroup('b', 'Group B'),
            FakeGroup('a', 'Group B'),
        ])
        session_model = session.model(authenticated_request)

        ids = [group['id'] for group in session_model['groups']]

        assert ids == ['__world__', 'c', 'a', 'b']
コード例 #40
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_sorts_groups(self, authenticated_request):
        authenticated_request.set_groups([
            FakeGroup('c', 'Group A'),
            FakeGroup('b', 'Group B'),
            FakeGroup('a', 'Group B'),
        ])
        session_model = session.model(authenticated_request)

        ids = [group['id'] for group in session_model['groups']]

        assert ids == ['__world__', 'c', 'a', 'b']
コード例 #41
0
def test_sorts_groups(User):
    fake_user = Mock()
    fake_user.groups = [
        FakeGroup('c', 'Group A'),
        FakeGroup('b', 'Group B'),
        FakeGroup('a', 'Group B'),
    ]
    request = Mock(authenticated_user=fake_user)
    session_model = model(request)

    ids = [group['id'] for group in session_model['groups']]
    assert ids == ['__world__', 'c', 'a', 'b']
コード例 #42
0
ファイル: views.py プロジェクト: klrkdekira/h
 def wrapper(context, request):
     if request.method == 'POST':
         data = request.json_body
         data.update(request.params)
         request.content_type = 'application/x-www-form-urlencoded'
         request.POST.clear()
         request.POST.update(data)
     inst = view(request)
     meth = getattr(inst, self.attr)
     result = meth()
     result = ajax_form(request, result)
     model = result.setdefault('model', {})
     model.update(session.model(request))
     result.pop('form', None)
     return result
コード例 #43
0
 def wrapper(context, request):
     if request.method == 'POST':
         data = request.json_body
         data.update(request.params)
         request.content_type = 'application/x-www-form-urlencoded'
         request.POST.clear()
         request.POST.update(data)
     inst = view(request)
     meth = getattr(inst, self.attr)
     result = meth()
     result = ajax_form(request, result)
     model = result.setdefault('model', {})
     model.update(session.model(request))
     result.pop('form', None)
     return result
コード例 #44
0
ファイル: views.py プロジェクト: ningyifan/h
        def wrapper(context, request):
            if request.method == 'POST':
                data = request.json_body
                data.update(request.params)
                request.content_type = 'application/x-www-form-urlencoded'
                request.POST.clear()
                request.POST.update(data)

            inst = view(request)
            meth = getattr(inst, self.attr)
            result = meth()

            if isinstance(result, httpexceptions.HTTPRedirection):
                result.location = request.path_url
                return result

            result = ajax_form(request, result)

            model = result.setdefault('model', {})
            model.update(session.model(request))

            return result
コード例 #45
0
ファイル: views.py プロジェクト: hylhero/h
        def wrapper(context, request):
            if request.method == 'POST':
                data = request.json_body
                data.update(request.params)
                request.content_type = 'application/x-www-form-urlencoded'
                request.POST.clear()
                request.POST.update(data)

            inst = view(request)
            meth = getattr(inst, self.attr)
            result = meth()

            if isinstance(result, httpexceptions.HTTPRedirection):
                result.location = request.path_url
                return result

            result = ajax_form(request, result)

            model = result.setdefault('model', {})
            model.update(session.model(request))

            return result
コード例 #46
0
    def test_world_group_has_no_url(self, authenticated_request):
        model = session.model(authenticated_request)
        world_group = [g for g in model['groups'] if g['id'] == '__world__'][0]

        assert 'url' not in world_group
コード例 #47
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_anonymous_hides_sidebar_tutorial(self, unauthenticated_request):
        preferences = session.model(unauthenticated_request)['preferences']

        assert 'show_sidebar_tutorial' not in preferences
コード例 #48
0
    def test_world_group_is_public(self, authenticated_request):
        model = session.model(authenticated_request)
        world_group = [g for g in model['groups'] if g['id'] == '__world__'][0]

        assert world_group['public'] is True
コード例 #49
0
ファイル: views.py プロジェクト: bitsoffreedom/h
def session_view(request):
    flash = session.pop_flash(request)
    model = session.model(request)
    return dict(status='okay', flash=flash, model=model)
コード例 #50
0
ファイル: views.py プロジェクト: Treora/h
def session_view(request):
    request.add_response_callback(session.set_csrf_token)
    flash = session.pop_flash(request)
    model = session.model(request)
    return dict(status='okay', flash=flash, model=model)
コード例 #51
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_world_group_is_public(self, authenticated_request):
        model = session.model(authenticated_request)
        world_group = [g for g in model['groups'] if g['id'] == '__world__'][0]

        assert world_group['public'] is True
コード例 #52
0
ファイル: views.py プロジェクト: openbizgit/h
def bad_csrf_token(context, request):
    request.response.status_code = 403
    reason = _("Session is invalid. Please try again.")
    return {"status": "failure", "reason": reason, "model": session.model(request)}
コード例 #53
0
ファイル: views.py プロジェクト: openbizgit/h
def ajax_payload(request, data):
    payload = {"flash": session.pop_flash(request), "model": session.model(request)}
    payload.update(data)
    return payload
コード例 #54
0
ファイル: session_test.py プロジェクト: hypothesis/h
    def test_includes_features(self, authenticated_request):
        feature_dict = {"feature_one": True, "feature_two": False}
        authenticated_request.set_features(feature_dict)

        assert session.model(authenticated_request)["features"] == feature_dict
コード例 #55
0
    def test_anonymous_hides_sidebar_tutorial(self, unauthenticated_request):
        preferences = session.model(unauthenticated_request)['preferences']

        assert 'show_sidebar_tutorial' not in preferences
コード例 #56
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_world_group_has_no_url(self, authenticated_request):
        model = session.model(authenticated_request)
        world_group = [g for g in model['groups'] if g['id'] == '__world__'][0]

        assert 'url' not in world_group
コード例 #57
0
def session_view(request):
    flash = session.pop_flash(request)
    model = session.model(request)
    return dict(status='okay', flash=flash, model=model)
コード例 #58
0
ファイル: views.py プロジェクト: VanyTang/h
def ajax_payload(request, data):
    payload = {'flash': session.pop_flash(request),
               'model': session.model(request)}
    payload.update(data)
    return payload