コード例 #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.profile(unauthenticated_request)

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

        session.profile(unauthenticated_request)

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

        session.profile(authenticated_request)

        svc.session_groups.assert_called_once_with(user=authenticated_request.user,
                                                   authority=authenticated_request.authority)
コード例 #4
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.profile(authenticated_request)

        svc.session_groups.assert_called_once_with(user=authenticated_request.user,
                                                   authority=authenticated_request.authority)
コード例 #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.profile(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')])

        profile = session.profile(authenticated_request)
        private_group = [g for g in profile['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')])

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

        assert private_group['public'] is False
コード例 #8
0
ファイル: session_test.py プロジェクト: jccr/h
def test_publisher_group_is_public_in_profile(third_party_request,
                                              publisher_group):
    profile = session.profile(third_party_request)
    group = [g for g in profile['groups']
             if g['id'] == publisher_group.pubid][0]

    assert group['public'] is True
コード例 #9
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]

        profile = session.profile(unauthenticated_request)

        assert not profile['groups'][0].get('url')
コード例 #10
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]

        profile = session.profile(unauthenticated_request)

        assert profile['groups'][0]['public']
コード例 #11
0
    def test_private_group_has_url(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

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

        assert private_group['url']
コード例 #12
0
    def test_private_group_is_not_public(self, authenticated_request):
        authenticated_request.set_groups([FakeGroup('a', 'Group A')])

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

        assert private_group['public'] is False
コード例 #13
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]

        profile = session.profile(unauthenticated_request)

        assert not profile['groups'][0].get('url')
コード例 #14
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]

        profile = session.profile(unauthenticated_request)

        assert profile['groups'][0]['public']
コード例 #15
0
ファイル: session_test.py プロジェクト: jccr/h
def test_publisher_group_has_no_url_in_profile(third_party_request,
                                               publisher_group):
    profile = session.profile(third_party_request)
    group = [g for g in profile['groups']
             if g['id'] == publisher_group.pubid][0]

    assert 'url' not in group
コード例 #16
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]

        profile = session.profile(authenticated_request)

        assert profile['groups'][0]['url']
コード例 #17
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]

        profile = session.profile(authenticated_request)

        assert not profile["groups"][0]["public"]
コード例 #18
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]

        profile = session.profile(authenticated_request)

        assert profile['groups'][0]['url']
コード例 #19
0
    def test_includes_features(self, authenticated_request):
        feature_dict = {
            'feature_one': True,
            'feature_two': False,
        }
        authenticated_request.set_features(feature_dict)

        assert session.profile(authenticated_request)['features'] == feature_dict
コード例 #20
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.profile(authenticated_request)['features'] == feature_dict
コード例 #21
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]

        profile = session.profile(authenticated_request)

        assert not profile['groups'][0]['public']
コード例 #22
0
    def test_authenticated_sidebar_tutorial(self, authenticated_request, dismissed):
        authenticated_request.set_sidebar_tutorial_dismissed(dismissed)

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

        if dismissed:
            assert 'show_sidebar_tutorial' not in preferences
        else:
            assert preferences['show_sidebar_tutorial'] is True
コード例 #23
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]

        profile = session.profile(authenticated_request)

        assert not profile["groups"][0]["public"]
コード例 #24
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_authenticated_sidebar_tutorial(self, authenticated_request, dismissed):
        authenticated_request.set_sidebar_tutorial_dismissed(dismissed)

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

        if dismissed:
            assert 'show_sidebar_tutorial' not in preferences
        else:
            assert preferences['show_sidebar_tutorial'] is True
コード例 #25
0
ファイル: session_test.py プロジェクト: ssin122/test-h
def test_profile_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.profile(request)['features'] == feature_dict
コード例 #26
0
ファイル: api_profile.py プロジェクト: ziqizh/h
def update_preferences(request):
    preferences = request.json_body.get('preferences', {})

    svc = request.find_service(name='user')
    try:
        svc.update_preferences(request.user, **preferences)
    except TypeError as e:
        raise APIError(str(e), status_code=400)

    return h_session.profile(request)
コード例 #27
0
ファイル: api_profile.py プロジェクト: gnott/h
def update_preferences(request):
    preferences = request.json_body.get('preferences', {})

    svc = request.find_service(name='user')
    try:
        svc.update_preferences(request.user, **preferences)
    except TypeError as e:
        raise APIError(e.message, status_code=400)

    return h_session.profile(request)
コード例 #28
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'),
        ])
        profile = session.profile(authenticated_request)

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

        assert ids == ['__world__', 'c', 'a', 'b']
コード例 #29
0
    def test_sorts_groups(self, authenticated_request):
        authenticated_request.set_groups([
            FakeGroup('c', 'Group A'),
            FakeGroup('b', 'Group B'),
            FakeGroup('a', 'Group B'),
        ])
        profile = session.profile(authenticated_request)

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

        assert ids == ['__world__', 'c', 'a', 'b']
コード例 #30
0
def update_preferences(request):
    preferences = request.json_body.get("preferences", {})

    svc = request.find_service(name="user")
    # TODO: The following exception doesn't match convention for validation
    # used in other endpoints
    try:
        svc.update_preferences(request.user, **preferences)
    except TypeError as e:
        raise APIError(str(e), status_code=400)

    return h_session.profile(request)
コード例 #31
0
ファイル: profile.py プロジェクト: hypothesis/h
def update_preferences(request):
    preferences = request.json_body.get("preferences", {})

    svc = request.find_service(name="user")
    # TODO: The following exception doesn't match convention for validation
    # used in other endpoints
    try:
        svc.update_preferences(request.user, **preferences)
    except TypeError as e:
        raise HTTPBadRequest(str(e))

    return h_session.profile(request)
コード例 #32
0
ファイル: session_test.py プロジェクト: ssin122/test-h
def test_profile_sorts_groups():
    fake_user = mock.Mock()
    fake_user.groups = [
        FakeGroup('c', 'Group A'),
        FakeGroup('b', 'Group B'),
        FakeGroup('a', 'Group B'),
    ]
    request = mock.Mock(authenticated_user=fake_user)
    profile = session.profile(request)

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

    assert ids == ['__world__', 'c', 'a', 'b']
コード例 #33
0
ファイル: session_test.py プロジェクト: ssin122/test-h
def test_profile_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.profile(request)['preferences']

    if show_tutorial:
        assert preferences['show_sidebar_tutorial'] is True
    else:
        assert 'show_sidebar_tutorial' not in preferences
コード例 #34
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_anonymous_authority(self, unauthenticated_request, authority):
     assert session.profile(unauthenticated_request)['authority'] == authority
コード例 #35
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_authority_override(self, unauthenticated_request):
        profile = session.profile(unauthenticated_request, 'foo.com')

        assert profile['authority'] == 'foo.com'
コード例 #36
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_user_info_unauthenticated(self, unauthenticated_request):
     profile = session.profile(unauthenticated_request)
     assert 'user_info' not in profile
コード例 #37
0
ファイル: api_profile.py プロジェクト: ziqizh/h
def profile(request):
    authority = request.params.get('authority')
    return h_session.profile(request, authority)
コード例 #38
0
 def test_userid_authenticated(self, authenticated_request):
     profile = session.profile(authenticated_request)
     assert profile['userid'] == u'acct:[email protected]'
コード例 #39
0
    def test_authority_override(self, unauthenticated_request):
        unauthenticated_request.set_public_groups({'foo.com': []})

        profile = session.profile(unauthenticated_request, 'foo.com')

        assert profile['authority'] == 'foo.com'
コード例 #40
0
    def test_authenticated_ignores_authority_override(self, authenticated_request, authority):
        profile = session.profile(authenticated_request, 'foo.com')

        assert profile['authority'] == authority
コード例 #41
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_userid_unauthenticated(self, unauthenticated_request):
     assert session.profile(unauthenticated_request)['userid'] is None
コード例 #42
0
ファイル: api_profile.py プロジェクト: gnott/h
def profile(request):
    authority = request.params.get('authority')
    return h_session.profile(request, authority)
コード例 #43
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_user_info_authenticated(self, authenticated_request, patch):
     profile = session.profile(authenticated_request)
     user_info = profile['user_info']
     assert user_info['display_name'] == authenticated_request.user.display_name
コード例 #44
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_userid_authenticated(self, authenticated_request):
     profile = session.profile(authenticated_request)
     assert profile['userid'] == 'acct:[email protected]'
コード例 #45
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_anonymous_hides_sidebar_tutorial(self, unauthenticated_request):
        preferences = session.profile(unauthenticated_request)['preferences']

        assert 'show_sidebar_tutorial' not in preferences
コード例 #46
0
    def test_third_party_ingores_authority_override(self, third_party_request, third_party_domain):
        profile = session.profile(third_party_request, 'foo.com')

        assert profile['authority'] == third_party_domain
コード例 #47
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_publisher_group_has_no_url(self, third_party_request, publisher_group):
        profile = session.profile(third_party_request)
        group = [g for g in profile['groups'] if g['id'] == publisher_group.pubid][0]

        assert 'url' not in group
コード例 #48
0
 def test_user_info_unauthenticated(self, unauthenticated_request):
     profile = session.profile(unauthenticated_request)
     assert 'user_info' not in profile
コード例 #49
0
 def test_authenticated_authority(self, authenticated_request, authority):
     assert session.profile(authenticated_request)['authority'] == authority
コード例 #50
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_user_info_authenticated_when_flag_off(self, authenticated_request):
     authenticated_request.feature.flags['api_render_user_info'] = False
     profile = session.profile(authenticated_request)
     assert 'user_info' not in profile
コード例 #51
0
 def test_third_party_authority(self, third_party_request, third_party_domain):
     assert session.profile(third_party_request)['authority'] == third_party_domain
コード例 #52
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_third_party_ingores_authority_override(self, third_party_request, third_party_domain):
        profile = session.profile(third_party_request, 'foo.com')

        assert profile['authority'] == third_party_domain
コード例 #53
0
 def test_user_info_authenticated(self, authenticated_request, patch):
     profile = session.profile(authenticated_request)
     user_info = profile['user_info']
     assert user_info['display_name'] == authenticated_request.user.display_name
コード例 #54
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_third_party_authority(self, third_party_request, third_party_domain):
     assert session.profile(third_party_request)['authority'] == third_party_domain
コード例 #55
0
 def test_userid_unauthenticated(self, unauthenticated_request):
     assert session.profile(unauthenticated_request)['userid'] is None
コード例 #56
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_publisher_group_is_public(self, third_party_request, publisher_group):
        profile = session.profile(third_party_request)
        group = [g for g in profile['groups'] if g['id'] == publisher_group.pubid][0]

        assert group['public'] is True
コード例 #57
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
    def test_authenticated_ignores_authority_override(self, authenticated_request, authority):
        profile = session.profile(authenticated_request, 'foo.com')

        assert profile['authority'] == authority
コード例 #58
0
ファイル: session_test.py プロジェクト: chinmaygghag/h
 def test_authenticated_authority(self, authenticated_request, authority):
     assert session.profile(authenticated_request)['authority'] == authority
コード例 #59
0
ファイル: session_test.py プロジェクト: gnott/h
    def test_authority_override(self, unauthenticated_request):
        unauthenticated_request.set_public_groups({'foo.com': []})

        profile = session.profile(unauthenticated_request, 'foo.com')

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

        assert 'url' not in world_group