27
27
file = sys .stderr )
28
28
sys .exit (1 )
29
29
30
- # Get team token from environment variable.
31
- # This team needs to have sufficient permission to get team information
32
- # and assume user identities.
33
- team_oauth2_token = os .environ .get ('DROPBOX_TEAM_TOKEN' )
34
- if team_oauth2_token is None :
35
- print ('Set DROPBOX_TEAM_TOKEN environment variable to a valid token.' ,
36
- file = sys .stderr )
37
- sys .exit (1 )
30
+
31
+ def require_team_token (f ):
32
+ def inner (* args , ** kwargs ):
33
+ # Get team token from environment variable.
34
+ # This team needs to have sufficient permission to get team information
35
+ # and assume user identities.
36
+ team_oauth2_token = os .environ .get ('DROPBOX_TEAM_TOKEN' )
37
+ if team_oauth2_token is None :
38
+ print ('Set DROPBOX_TEAM_TOKEN environment variable to a valid token.' ,
39
+ file = sys .stderr )
40
+ sys .exit (1 )
41
+ return f (team_oauth2_token , * args , ** kwargs )
42
+ return inner
43
+
38
44
39
45
MALFORMED_TOKEN = 'asdf'
40
46
INVALID_TOKEN = 'z' * 62
@@ -44,7 +50,6 @@ class TestDropbox(unittest.TestCase):
44
50
45
51
def setUp (self ):
46
52
self .dbx = Dropbox (oauth2_token )
47
- self .dbxt = DropboxTeam (team_oauth2_token )
48
53
49
54
def test_bad_auth (self ):
50
55
# Test malformed token
@@ -85,12 +90,14 @@ def test_upload_download(self):
85
90
# Cleanup folder
86
91
self .dbx .files_delete ('/Test/%s' % timestamp )
87
92
88
- def test_team (self ):
89
- self .dbxt .team_groups_list ()
90
- r = self .dbxt .team_members_list ()
93
+ @require_team_token
94
+ def test_team (self , token ):
95
+ dbxt = DropboxTeam (token )
96
+ dbxt .team_groups_list ()
97
+ r = dbxt .team_members_list ()
91
98
if r .members :
92
99
# Only test assuming a member if there is a member
93
- self . dbxt .as_user (r .members [0 ].profile .team_member_id ).files_list_folder ('' )
100
+ dbxt .as_user (r .members [0 ].profile .team_member_id ).files_list_folder ('' )
94
101
95
102
96
103
from io import BytesIO
0 commit comments