boxr 1.6.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/boxr.gemspec +2 -2
- data/lib/boxr/users.rb +20 -8
- data/lib/boxr/version.rb +1 -1
- data/spec/boxr/collaborations_spec.rb +37 -0
- data/spec/boxr/comments_spec.rb +34 -0
- data/spec/boxr/files_spec.rb +123 -0
- data/spec/boxr/folders_spec.rb +72 -0
- data/spec/boxr/groups_spec.rb +65 -0
- data/spec/boxr/metadata_spec.rb +52 -0
- data/spec/boxr/search_spec.rb +12 -0
- data/spec/boxr/tasks_spec.rb +58 -0
- data/spec/boxr/users_spec.rb +52 -0
- data/spec/boxr/watermarking_spec.rb +33 -0
- data/spec/boxr/web_links_spec.rb +22 -0
- data/spec/boxr_spec.rb +3 -553
- data/spec/spec_helper.rb +30 -1
- metadata +31 -10
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes file metadata operations"\"
|
4
|
+
describe 'file metadata operations' do
|
5
|
+
it "invokes file metadata operations" do
|
6
|
+
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
7
|
+
|
8
|
+
puts "create metadata"
|
9
|
+
meta = {"a" => "hello", "b" => "world"}
|
10
|
+
metadata = BOX_CLIENT.create_metadata(test_file, meta)
|
11
|
+
expect(metadata.a).to eq("hello")
|
12
|
+
|
13
|
+
puts "update metadata"
|
14
|
+
metadata = BOX_CLIENT.update_metadata(test_file, {op: :replace, path: "/b", value: "there"})
|
15
|
+
expect(metadata.b).to eq("there")
|
16
|
+
metadata = BOX_CLIENT.update_metadata(test_file, [{op: :replace, path: "/b", value: "friend"}])
|
17
|
+
expect(metadata.b).to eq("friend")
|
18
|
+
|
19
|
+
puts "get metadata"
|
20
|
+
metadata = BOX_CLIENT.metadata(test_file)
|
21
|
+
expect(metadata.a).to eq("hello")
|
22
|
+
|
23
|
+
puts "delete metadata"
|
24
|
+
result = BOX_CLIENT.delete_metadata(test_file)
|
25
|
+
expect(result).to eq({})
|
26
|
+
end
|
27
|
+
|
28
|
+
#rake spec SPEC_OPTS="-e \"invokes folder metadata operations"\"
|
29
|
+
#NOTE: this test will fail unless you create a metadata template called 'test' with two attributes: 'a' of type text, and 'b' of type text
|
30
|
+
it "invokes folder metadata operations" do
|
31
|
+
new_folder = BOX_CLIENT.create_folder(SUB_FOLDER_NAME, @test_folder)
|
32
|
+
|
33
|
+
puts "create folder metadata"
|
34
|
+
meta = {"a" => "hello", "b" => "world"}
|
35
|
+
metadata = BOX_CLIENT.create_folder_metadata(new_folder, meta, "enterprise", "test")
|
36
|
+
expect(metadata.a).to eq("hello")
|
37
|
+
|
38
|
+
puts "update folder metadata"
|
39
|
+
metadata = BOX_CLIENT.update_folder_metadata(new_folder, {op: :replace, path: "/b", value: "there"}, "enterprise", "test")
|
40
|
+
expect(metadata.b).to eq("there")
|
41
|
+
metadata = BOX_CLIENT.update_folder_metadata(new_folder, [{op: :replace, path: "/b", value: "friend"}], "enterprise", "test")
|
42
|
+
expect(metadata.b).to eq("friend")
|
43
|
+
|
44
|
+
puts "get folder metadata"
|
45
|
+
metadata = BOX_CLIENT.folder_metadata(new_folder, "enterprise", "test")
|
46
|
+
expect(metadata.a).to eq("hello")
|
47
|
+
|
48
|
+
puts "delete folder metadata"
|
49
|
+
result = BOX_CLIENT.delete_folder_metadata(new_folder, "enterprise", "test")
|
50
|
+
expect(result).to eq({})
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes search operations"\"
|
4
|
+
describe 'search operations' do
|
5
|
+
it "invokes search operations" do
|
6
|
+
#the issue with this test is that Box can take between 5-10 minutes to index any content uploaded; this is just a smoke test
|
7
|
+
#so we are searching for something that should return zero results
|
8
|
+
puts "perform search"
|
9
|
+
results = BOX_CLIENT.search("sdlfjuwnsljsdfuqpoiqweouyvnnadsfkjhiuweruywerbjvhvkjlnasoifyukhenlwdflnsdvoiuawfydfjh")
|
10
|
+
expect(results).to eq([])
|
11
|
+
end
|
12
|
+
end
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes task operations"\"
|
4
|
+
describe 'task operations' do
|
5
|
+
it "invokes task operations" do
|
6
|
+
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
7
|
+
collaboration = BOX_CLIENT.add_collaboration(@test_folder, {id: @test_user.id, type: :user}, :editor)
|
8
|
+
|
9
|
+
puts "create task"
|
10
|
+
new_task = BOX_CLIENT.create_task(test_file, message: TEST_TASK_MESSAGE)
|
11
|
+
expect(new_task.message).to eq(TEST_TASK_MESSAGE)
|
12
|
+
TEST_TASK = new_task
|
13
|
+
|
14
|
+
puts "inspect file tasks"
|
15
|
+
tasks = BOX_CLIENT.file_tasks(test_file)
|
16
|
+
expect(tasks.first.id).to eq(TEST_TASK.id)
|
17
|
+
|
18
|
+
puts "inspect task"
|
19
|
+
task = BOX_CLIENT.task(TEST_TASK)
|
20
|
+
expect(task.id).to eq(TEST_TASK.id)
|
21
|
+
|
22
|
+
puts "update task"
|
23
|
+
NEW_TASK_MESSAGE = "new task message"
|
24
|
+
updated_task = BOX_CLIENT.update_task(TEST_TASK, message: NEW_TASK_MESSAGE)
|
25
|
+
expect(updated_task.message).to eq(NEW_TASK_MESSAGE)
|
26
|
+
|
27
|
+
puts "create task assignment"
|
28
|
+
task_assignment = BOX_CLIENT.create_task_assignment(TEST_TASK, assign_to: @test_user.id)
|
29
|
+
expect(task_assignment.assigned_to.id).to eq(@test_user.id)
|
30
|
+
TASK_ASSIGNMENT = task_assignment
|
31
|
+
|
32
|
+
puts "inspect task assignment"
|
33
|
+
task_assignment = BOX_CLIENT.task_assignment(TASK_ASSIGNMENT)
|
34
|
+
expect(task_assignment.id).to eq(TASK_ASSIGNMENT.id)
|
35
|
+
|
36
|
+
puts "inspect task assignments"
|
37
|
+
task_assignments = BOX_CLIENT.task_assignments(TEST_TASK)
|
38
|
+
expect(task_assignments.count).to eq(1)
|
39
|
+
expect(task_assignments[0].id).to eq(TASK_ASSIGNMENT.id)
|
40
|
+
|
41
|
+
#TODO: can't do this test yet because the test user needs to confirm their email address before you can do this
|
42
|
+
puts "update task assignment"
|
43
|
+
expect {
|
44
|
+
box_client_as_test_user = Boxr::Client.new(ENV['BOX_DEVELOPER_TOKEN'], as_user_id: @test_user.id)
|
45
|
+
new_message = "Updated task message"
|
46
|
+
task_assignment = box_client_as_test_user.update_task_assignment(TEST_TASK, resolution_state: :completed)
|
47
|
+
expect(task_assignment.resolution_state).to eq('completed')
|
48
|
+
}.to raise_error
|
49
|
+
|
50
|
+
puts "delete task assignment"
|
51
|
+
result = BOX_CLIENT.delete_task_assignment(TASK_ASSIGNMENT)
|
52
|
+
expect(result).to eq({})
|
53
|
+
|
54
|
+
puts "delete task"
|
55
|
+
result = BOX_CLIENT.delete_task(TEST_TASK)
|
56
|
+
expect(result).to eq({})
|
57
|
+
end
|
58
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes user operations"\"
|
4
|
+
describe 'user operations' do
|
5
|
+
it "invokes user operations" do
|
6
|
+
puts "inspect current user"
|
7
|
+
user = BOX_CLIENT.current_user
|
8
|
+
expect(user.status).to eq('active')
|
9
|
+
user = BOX_CLIENT.me(fields: [:role])
|
10
|
+
expect(user.role).to_not be_nil
|
11
|
+
|
12
|
+
puts "inspect a user"
|
13
|
+
user = BOX_CLIENT.user(@test_user)
|
14
|
+
expect(user.id).to eq(@test_user.id)
|
15
|
+
|
16
|
+
puts "inspect all users"
|
17
|
+
all_users = BOX_CLIENT.all_users()
|
18
|
+
test_user = all_users.find{|u| u.id == @test_user.id}
|
19
|
+
expect(test_user).to_not be_nil
|
20
|
+
|
21
|
+
#create user is tested in the before method
|
22
|
+
|
23
|
+
puts "update user"
|
24
|
+
new_name = "Chuck Nevitt"
|
25
|
+
user = BOX_CLIENT.update_user(@test_user, name: new_name)
|
26
|
+
expect(user.name).to eq(new_name)
|
27
|
+
|
28
|
+
puts "move user's folder"
|
29
|
+
second_test_user = BOX_CLIENT.create_user("Second Test User", login: "second_test_user@#{('a'..'z').to_a.shuffle[0,10].join}.com", role: 'coadmin')
|
30
|
+
folder = BOX_CLIENT.move_users_folder(@test_user, Boxr::ROOT, second_test_user)
|
31
|
+
expect(folder.owned_by.id).to eq(second_test_user.id)
|
32
|
+
|
33
|
+
# TODO: Broken while waiting to figure out permissions
|
34
|
+
# puts "add email alias for user"
|
35
|
+
# email_alias = "test-boxr-user-alias@boxntest.com" #{('a'..'z').to_a.shuffle[0,10].join}.com"
|
36
|
+
# new_alias = BOX_CLIENT.add_email_alias_for_user(@test_user, email_alias)
|
37
|
+
# expect(new_alias.type).to eq('email_alias')
|
38
|
+
|
39
|
+
# puts "get email aliases for user"
|
40
|
+
# email_aliases = BOX_CLIENT.email_aliases_for_user(@test_user)
|
41
|
+
# expect(email_aliases.first.id).to eq(new_alias.id)
|
42
|
+
|
43
|
+
# puts "remove email alias for user"
|
44
|
+
# result = BOX_CLIENT.remove_email_alias_for_user(@test_user, new_alias.id)
|
45
|
+
# expect(result).to eq({})
|
46
|
+
|
47
|
+
puts "delete users"
|
48
|
+
BOX_CLIENT.delete_user(second_test_user, force: true)
|
49
|
+
result = BOX_CLIENT.delete_user(@test_user, force: true)
|
50
|
+
expect(result).to eq({})
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes watermarking operations"\"
|
4
|
+
describe 'watermarking operations' do
|
5
|
+
it 'invokes watermarking operations' do
|
6
|
+
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
7
|
+
folder = BOX_CLIENT.folder(@test_folder)
|
8
|
+
|
9
|
+
puts "apply watermark on file"
|
10
|
+
watermark = BOX_CLIENT.apply_watermark_on_file(test_file)
|
11
|
+
expect(watermark.watermark).to_not be_nil
|
12
|
+
|
13
|
+
puts "get watermark on file"
|
14
|
+
watermark = BOX_CLIENT.get_watermark_on_file(test_file)
|
15
|
+
expect(watermark.watermark).to_not be_nil
|
16
|
+
|
17
|
+
puts "remove watermark on file"
|
18
|
+
result = BOX_CLIENT.remove_watermark_on_file(test_file)
|
19
|
+
expect(result).to eq({})
|
20
|
+
|
21
|
+
puts "apply watermark on folder"
|
22
|
+
watermark = BOX_CLIENT.apply_watermark_on_folder(folder)
|
23
|
+
expect(watermark.watermark).to_not be_nil
|
24
|
+
|
25
|
+
puts "get watermark on folder"
|
26
|
+
watermark = BOX_CLIENT.get_watermark_on_folder(folder)
|
27
|
+
expect(watermark.watermark).to_not be_nil
|
28
|
+
|
29
|
+
puts "remove watermark on folder"
|
30
|
+
result = BOX_CLIENT.remove_watermark_on_folder(folder)
|
31
|
+
expect(result).to eq({})
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
#rake spec SPEC_OPTS="-e \"invokes web links operations"\"
|
4
|
+
describe "web links operations" do
|
5
|
+
it 'invokes web links operations' do
|
6
|
+
puts "create web link"
|
7
|
+
web_link = BOX_CLIENT.create_web_link(TEST_WEB_URL, '0', name: "my new link", description: "link description...")
|
8
|
+
expect(web_link.url).to eq(TEST_WEB_URL)
|
9
|
+
|
10
|
+
puts "get web link"
|
11
|
+
web_link_new = BOX_CLIENT.get_web_link(web_link)
|
12
|
+
expect(web_link_new.id).to eq(web_link.id)
|
13
|
+
|
14
|
+
puts "update web link"
|
15
|
+
updated_web_link = BOX_CLIENT.update_web_link(web_link, name: 'new name', description: 'new description', url: TEST_WEB_URL2)
|
16
|
+
expect(updated_web_link.url).to eq(TEST_WEB_URL2)
|
17
|
+
|
18
|
+
puts "delete web link"
|
19
|
+
result = BOX_CLIENT.delete_web_link(web_link)
|
20
|
+
expect(result).to eq({})
|
21
|
+
end
|
22
|
+
end
|
data/spec/boxr_spec.rb
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe Boxr::Client do
|
4
|
-
|
5
4
|
#PLEASE NOTE
|
6
|
-
#
|
5
|
+
#These tests are intentionally NOT a series of unit tests. The goal is to smoke test the entire code base
|
7
6
|
#against an actual Box account, making real calls to the Box API. The Box API is subject to frequent
|
8
7
|
#changes and it is not sufficient to mock responses as those responses will change over time. Successfully
|
9
8
|
#running this test suite shows that the code base works with the current Box API. The main premise here
|
@@ -15,7 +14,7 @@ describe Boxr::Client do
|
|
15
14
|
|
16
15
|
#follow the directions in .env.example to set up your BOX_DEVELOPER_TOKEN
|
17
16
|
#keep in mind it is only valid for 60 minutes
|
18
|
-
BOX_CLIENT = Boxr::Client.new #using ENV['BOX_DEVELOPER_TOKEN']
|
17
|
+
BOX_CLIENT = Boxr::Client.new # using ENV['BOX_DEVELOPER_TOKEN']
|
19
18
|
|
20
19
|
#uncomment this line to see the HTTP request and response debug info in the rspec output
|
21
20
|
# Boxr::turn_on_debugging
|
@@ -30,559 +29,10 @@ describe Boxr::Client do
|
|
30
29
|
COMMENT_MESSAGE = 'this is a comment'
|
31
30
|
REPLY_MESSAGE = 'this is a comment reply'
|
32
31
|
CHANGED_COMMENT_MESSAGE = 'this comment has been changed'
|
33
|
-
TEST_USER_LOGIN = "test-boxr-user@#{('a'..'z').to_a.shuffle[0,10].join}.com" #needs to be unique across anyone running this test
|
32
|
+
TEST_USER_LOGIN = "test-boxr-user@#{('a'..'z').to_a.shuffle[0,10].join}.com" # needs to be unique across anyone running this test
|
34
33
|
TEST_USER_NAME = "Test Boxr User"
|
35
34
|
TEST_GROUP_NAME= "Test Boxr Group"
|
36
35
|
TEST_TASK_MESSAGE = "Please review"
|
37
36
|
TEST_WEB_URL = 'https://www.box.com'
|
38
37
|
TEST_WEB_URL2 = 'https://www.google.com'
|
39
|
-
|
40
|
-
before(:each) do
|
41
|
-
puts "-----> Resetting Box Environment"
|
42
|
-
sleep BOX_SERVER_SLEEP
|
43
|
-
root_folders = BOX_CLIENT.root_folder_items.folders
|
44
|
-
test_folder = root_folders.find{|f| f.name == TEST_FOLDER_NAME}
|
45
|
-
if(test_folder)
|
46
|
-
BOX_CLIENT.delete_folder(test_folder, recursive: true)
|
47
|
-
end
|
48
|
-
new_folder = BOX_CLIENT.create_folder(TEST_FOLDER_NAME, Boxr::ROOT)
|
49
|
-
@test_folder = new_folder
|
50
|
-
|
51
|
-
all_users = BOX_CLIENT.all_users
|
52
|
-
test_users = all_users.select{|u| u.name == TEST_USER_NAME}
|
53
|
-
test_users.each do |u|
|
54
|
-
BOX_CLIENT.delete_user(u, force: true)
|
55
|
-
end
|
56
|
-
sleep BOX_SERVER_SLEEP
|
57
|
-
test_user = BOX_CLIENT.create_user(TEST_USER_NAME, login: TEST_USER_LOGIN)
|
58
|
-
@test_user = test_user
|
59
|
-
|
60
|
-
all_groups = BOX_CLIENT.groups
|
61
|
-
test_group = all_groups.find{|g| g.name == TEST_GROUP_NAME}
|
62
|
-
if(test_group)
|
63
|
-
BOX_CLIENT.delete_group(test_group)
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
# use this command to just execute this scenario
|
68
|
-
# rake spec SPEC_OPTS="-e \"invokes folder operations"\"
|
69
|
-
it 'invokes folder operations' do
|
70
|
-
puts "get folder using path"
|
71
|
-
folder = BOX_CLIENT.folder_from_path(TEST_FOLDER_NAME)
|
72
|
-
expect(folder.id).to eq(@test_folder.id)
|
73
|
-
|
74
|
-
puts "get folder info"
|
75
|
-
folder = BOX_CLIENT.folder(@test_folder)
|
76
|
-
expect(folder.id).to eq(@test_folder.id)
|
77
|
-
|
78
|
-
puts "create new folder"
|
79
|
-
new_folder = BOX_CLIENT.create_folder(SUB_FOLDER_NAME, @test_folder)
|
80
|
-
expect(new_folder).to be_a BoxrMash
|
81
|
-
SUB_FOLDER = new_folder
|
82
|
-
|
83
|
-
puts "update folder"
|
84
|
-
updated_folder = BOX_CLIENT.update_folder(SUB_FOLDER, description: SUB_FOLDER_DESCRIPTION)
|
85
|
-
expect(updated_folder.description).to eq(SUB_FOLDER_DESCRIPTION)
|
86
|
-
|
87
|
-
puts "copy folder"
|
88
|
-
new_folder = BOX_CLIENT.copy_folder(SUB_FOLDER,@test_folder, name: "copy of #{SUB_FOLDER_NAME}")
|
89
|
-
expect(new_folder).to be_a BoxrMash
|
90
|
-
SUB_FOLDER_COPY = new_folder
|
91
|
-
|
92
|
-
puts "create shared link for folder"
|
93
|
-
updated_folder = BOX_CLIENT.create_shared_link_for_folder(@test_folder, access: :open)
|
94
|
-
expect(updated_folder.shared_link.access).to eq("open")
|
95
|
-
|
96
|
-
puts "create password-protected shared link for folder"
|
97
|
-
updated_folder = BOX_CLIENT.create_shared_link_for_folder(@test_folder, password: 'password')
|
98
|
-
expect(updated_folder.shared_link.is_password_enabled).to eq(true)
|
99
|
-
shared_link = updated_folder.shared_link.url
|
100
|
-
|
101
|
-
puts "inspect shared link"
|
102
|
-
shared_item = BOX_CLIENT.shared_item(shared_link)
|
103
|
-
expect(shared_item.id).to eq(@test_folder.id)
|
104
|
-
|
105
|
-
puts "disable shared link for folder"
|
106
|
-
updated_folder = BOX_CLIENT.disable_shared_link_for_folder(@test_folder)
|
107
|
-
expect(updated_folder.shared_link).to be_nil
|
108
|
-
|
109
|
-
puts "move folder"
|
110
|
-
folder_to_move = BOX_CLIENT.create_folder("Folder to move", @test_folder)
|
111
|
-
folder_to_move_into = BOX_CLIENT.create_folder("Folder to move into", @test_folder)
|
112
|
-
folder_to_move = BOX_CLIENT.move_folder(folder_to_move, folder_to_move_into)
|
113
|
-
expect(folder_to_move.parent.id).to eq(folder_to_move_into.id)
|
114
|
-
|
115
|
-
puts "delete folder"
|
116
|
-
result = BOX_CLIENT.delete_folder(SUB_FOLDER_COPY, recursive: true)
|
117
|
-
expect(result).to eq ({})
|
118
|
-
|
119
|
-
puts "inspect the trash"
|
120
|
-
trash = BOX_CLIENT.trash()
|
121
|
-
expect(trash).to be_a Array
|
122
|
-
|
123
|
-
puts "inspect trashed folder"
|
124
|
-
trashed_folder = BOX_CLIENT.trashed_folder(SUB_FOLDER_COPY)
|
125
|
-
expect(trashed_folder.item_status).to eq("trashed")
|
126
|
-
|
127
|
-
puts "restore trashed folder"
|
128
|
-
restored_folder = BOX_CLIENT.restore_trashed_folder(SUB_FOLDER_COPY)
|
129
|
-
expect(restored_folder.item_status).to eq("active")
|
130
|
-
|
131
|
-
puts "trash and permanently delete folder"
|
132
|
-
BOX_CLIENT.delete_folder(SUB_FOLDER_COPY, recursive: true)
|
133
|
-
result = BOX_CLIENT.delete_trashed_folder(SUB_FOLDER_COPY)
|
134
|
-
expect(result).to eq({})
|
135
|
-
end
|
136
|
-
|
137
|
-
#rake spec SPEC_OPTS="-e \"invokes file operations"\"
|
138
|
-
it "invokes file operations" do
|
139
|
-
puts "upload a file"
|
140
|
-
new_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
141
|
-
expect(new_file.name).to eq(TEST_FILE_NAME)
|
142
|
-
test_file = new_file
|
143
|
-
|
144
|
-
puts "upload a file with custom name"
|
145
|
-
new_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder, name: TEST_FILE_NAME_CUSTOM)
|
146
|
-
expect(new_file.name).to eq(TEST_FILE_NAME_CUSTOM)
|
147
|
-
|
148
|
-
puts "get file using path"
|
149
|
-
file = BOX_CLIENT.file_from_path("/#{TEST_FOLDER_NAME}/#{TEST_FILE_NAME}")
|
150
|
-
expect(file.id).to eq(test_file.id)
|
151
|
-
|
152
|
-
puts "get file download url"
|
153
|
-
download_url = BOX_CLIENT.download_url(test_file)
|
154
|
-
expect(download_url).to start_with("https://")
|
155
|
-
|
156
|
-
puts "get file info"
|
157
|
-
file_info = BOX_CLIENT.file(test_file)
|
158
|
-
expect(file_info.id).to eq(test_file.id)
|
159
|
-
|
160
|
-
puts "get file preview link"
|
161
|
-
preview_url = BOX_CLIENT.preview_url(test_file)
|
162
|
-
expect(preview_url).to start_with("https://")
|
163
|
-
|
164
|
-
puts "update file"
|
165
|
-
new_description = 'this file is used to test Boxr'
|
166
|
-
tags = ['tag one','tag two']
|
167
|
-
updated_file_info = BOX_CLIENT.update_file(test_file, description: new_description, tags: tags)
|
168
|
-
expect(updated_file_info.description).to eq(new_description)
|
169
|
-
tag_file_info = BOX_CLIENT.file(updated_file_info, fields: [:tags])
|
170
|
-
expect(tag_file_info.tags.length).to eq(2)
|
171
|
-
|
172
|
-
puts "lock file"
|
173
|
-
expires_at_utc = Time.now.utc + (60*60*24) #one day from now
|
174
|
-
locked_file = BOX_CLIENT.lock_file(test_file, expires_at: expires_at_utc, is_download_prevented: true)
|
175
|
-
locked_file = BOX_CLIENT.file(locked_file, fields: [:lock])
|
176
|
-
expect(locked_file.lock.type).to eq('lock')
|
177
|
-
expect(locked_file.lock.expires_at).to_not be_nil
|
178
|
-
expect(locked_file.lock.is_download_prevented).to eq(true)
|
179
|
-
|
180
|
-
puts "unlock file"
|
181
|
-
unlocked_file = BOX_CLIENT.unlock_file(locked_file)
|
182
|
-
unlocked_file = BOX_CLIENT.file(unlocked_file, fields: [:lock])
|
183
|
-
expect(unlocked_file.lock).to be_nil
|
184
|
-
|
185
|
-
puts "download file"
|
186
|
-
file = BOX_CLIENT.download_file(test_file)
|
187
|
-
f = File.open("./spec/test_files/#{DOWNLOADED_TEST_FILE_NAME}", 'w+')
|
188
|
-
f.write(file)
|
189
|
-
f.close
|
190
|
-
expect(FileUtils.identical?("./spec/test_files/#{TEST_FILE_NAME}","./spec/test_files/#{DOWNLOADED_TEST_FILE_NAME}")).to eq(true)
|
191
|
-
File.delete("./spec/test_files/#{DOWNLOADED_TEST_FILE_NAME}")
|
192
|
-
|
193
|
-
puts "upload new version of file"
|
194
|
-
new_version = BOX_CLIENT.upload_new_version_of_file("./spec/test_files/#{TEST_FILE_NAME}", test_file)
|
195
|
-
expect(new_version.id).to eq(test_file.id)
|
196
|
-
|
197
|
-
puts "inspect versions of file"
|
198
|
-
versions = BOX_CLIENT.versions_of_file(test_file)
|
199
|
-
expect(versions.count).to eq(1) #the reason this is 1 instead of 2 is that Box considers 'versions' to be a versions other than 'current'
|
200
|
-
v1 = versions.first
|
201
|
-
|
202
|
-
puts "promote old version of file"
|
203
|
-
newer_version = BOX_CLIENT.promote_old_version_of_file(test_file, v1)
|
204
|
-
versions = BOX_CLIENT.versions_of_file(test_file)
|
205
|
-
expect(versions.count).to eq(2)
|
206
|
-
|
207
|
-
puts "delete old version of file"
|
208
|
-
result = BOX_CLIENT.delete_old_version_of_file(test_file,v1)
|
209
|
-
versions = BOX_CLIENT.versions_of_file(test_file)
|
210
|
-
expect(versions.count).to eq(2) #this is still 2 because with Box you can restore a trashed old version
|
211
|
-
|
212
|
-
puts "get file thumbnail"
|
213
|
-
thumb = BOX_CLIENT.thumbnail(test_file)
|
214
|
-
expect(thumb).not_to be_nil
|
215
|
-
|
216
|
-
puts "create shared link for file"
|
217
|
-
updated_file = BOX_CLIENT.create_shared_link_for_file(test_file, access: :open)
|
218
|
-
expect(updated_file.shared_link.access).to eq("open")
|
219
|
-
|
220
|
-
puts "create password-protected shared link for file"
|
221
|
-
updated_file = BOX_CLIENT.create_shared_link_for_file(test_file, password: 'password')
|
222
|
-
expect(updated_file.shared_link.is_password_enabled).to eq(true)
|
223
|
-
|
224
|
-
puts "disable shared link for file"
|
225
|
-
updated_file = BOX_CLIENT.disable_shared_link_for_file(test_file)
|
226
|
-
expect(updated_file.shared_link).to be_nil
|
227
|
-
|
228
|
-
puts "copy file"
|
229
|
-
new_file_name = "copy of #{TEST_FILE_NAME}"
|
230
|
-
new_file = BOX_CLIENT.copy_file(test_file, @test_folder, name: new_file_name)
|
231
|
-
expect(new_file.name).to eq(new_file_name)
|
232
|
-
NEW_FILE = new_file
|
233
|
-
|
234
|
-
puts "move file"
|
235
|
-
new_folder = BOX_CLIENT.create_folder(SUB_FOLDER_NAME, @test_folder)
|
236
|
-
test_file = BOX_CLIENT.move_file(test_file, new_folder.id)
|
237
|
-
expect(test_file.parent.id).to eq(new_folder.id)
|
238
|
-
|
239
|
-
puts "delete file"
|
240
|
-
result = BOX_CLIENT.delete_file(NEW_FILE)
|
241
|
-
expect(result).to eq({})
|
242
|
-
|
243
|
-
puts "get trashed file info"
|
244
|
-
trashed_file = BOX_CLIENT.trashed_file(NEW_FILE)
|
245
|
-
expect(trashed_file.item_status).to eq("trashed")
|
246
|
-
|
247
|
-
puts "restore trashed file"
|
248
|
-
restored_file = BOX_CLIENT.restore_trashed_file(NEW_FILE)
|
249
|
-
expect(restored_file.item_status).to eq("active")
|
250
|
-
|
251
|
-
puts "trash and permanently delete file"
|
252
|
-
BOX_CLIENT.delete_file(NEW_FILE)
|
253
|
-
result = BOX_CLIENT.delete_trashed_file(NEW_FILE)
|
254
|
-
expect(result).to eq({})
|
255
|
-
end
|
256
|
-
|
257
|
-
#rake spec SPEC_OPTS="-e \"invokes web links operations"\"
|
258
|
-
it 'invokes web links operations' do
|
259
|
-
puts "create web link"
|
260
|
-
web_link = BOX_CLIENT.create_web_link(TEST_WEB_URL, '0', name: "my new link", description: "link description...")
|
261
|
-
expect(web_link.url).to eq(TEST_WEB_URL)
|
262
|
-
|
263
|
-
puts "get web link"
|
264
|
-
web_link_new = BOX_CLIENT.get_web_link(web_link)
|
265
|
-
expect(web_link_new.id).to eq(web_link.id)
|
266
|
-
|
267
|
-
puts "update web link"
|
268
|
-
updated_web_link = BOX_CLIENT.update_web_link(web_link, name: 'new name', description: 'new description', url: TEST_WEB_URL2)
|
269
|
-
expect(updated_web_link.url).to eq(TEST_WEB_URL2)
|
270
|
-
|
271
|
-
puts "delete web link"
|
272
|
-
result = BOX_CLIENT.delete_web_link(web_link)
|
273
|
-
expect(result).to eq({})
|
274
|
-
end
|
275
|
-
|
276
|
-
#rake spec SPEC_OPTS="-e \"invokes watermarking operations"\"
|
277
|
-
it 'invokes watermarking operations' do
|
278
|
-
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
279
|
-
folder = BOX_CLIENT.folder(@test_folder)
|
280
|
-
|
281
|
-
puts "apply watermark on file"
|
282
|
-
watermark = BOX_CLIENT.apply_watermark_on_file(test_file)
|
283
|
-
expect(watermark.watermark).to_not be_nil
|
284
|
-
|
285
|
-
puts "get watermark on file"
|
286
|
-
watermark = BOX_CLIENT.get_watermark_on_file(test_file)
|
287
|
-
expect(watermark.watermark).to_not be_nil
|
288
|
-
|
289
|
-
puts "remove watermark on file"
|
290
|
-
result = BOX_CLIENT.remove_watermark_on_file(test_file)
|
291
|
-
expect(result).to eq({})
|
292
|
-
|
293
|
-
puts "apply watermark on folder"
|
294
|
-
watermark = BOX_CLIENT.apply_watermark_on_folder(folder)
|
295
|
-
expect(watermark.watermark).to_not be_nil
|
296
|
-
|
297
|
-
puts "get watermark on folder"
|
298
|
-
watermark = BOX_CLIENT.get_watermark_on_folder(folder)
|
299
|
-
expect(watermark.watermark).to_not be_nil
|
300
|
-
|
301
|
-
puts "remove watermark on folder"
|
302
|
-
result = BOX_CLIENT.remove_watermark_on_folder(folder)
|
303
|
-
expect(result).to eq({})
|
304
|
-
end
|
305
|
-
|
306
|
-
#rake spec SPEC_OPTS="-e \"invokes user operations"\"
|
307
|
-
it "invokes user operations" do
|
308
|
-
puts "inspect current user"
|
309
|
-
user = BOX_CLIENT.current_user
|
310
|
-
expect(user.status).to eq('active')
|
311
|
-
user = BOX_CLIENT.me(fields: [:role])
|
312
|
-
expect(user.role).to_not be_nil
|
313
|
-
|
314
|
-
puts "inspect a user"
|
315
|
-
user = BOX_CLIENT.user(@test_user)
|
316
|
-
expect(user.id).to eq(@test_user.id)
|
317
|
-
|
318
|
-
puts "inspect all users"
|
319
|
-
all_users = BOX_CLIENT.all_users()
|
320
|
-
test_user = all_users.find{|u| u.id == @test_user.id}
|
321
|
-
expect(test_user).to_not be_nil
|
322
|
-
|
323
|
-
#create user is tested in the before method
|
324
|
-
|
325
|
-
puts "update user"
|
326
|
-
new_name = "Chuck Nevitt"
|
327
|
-
user = BOX_CLIENT.update_user(@test_user, name: new_name)
|
328
|
-
expect(user.name).to eq(new_name)
|
329
|
-
|
330
|
-
puts "add email alias for user"
|
331
|
-
email_alias = "test-boxr-user-alias@boxntest.com" #{('a'..'z').to_a.shuffle[0,10].join}.com"
|
332
|
-
new_alias = BOX_CLIENT.add_email_alias_for_user(@test_user, email_alias)
|
333
|
-
expect(new_alias.type).to eq('email_alias')
|
334
|
-
|
335
|
-
puts "get email aliases for user"
|
336
|
-
email_aliases = BOX_CLIENT.email_aliases_for_user(@test_user)
|
337
|
-
expect(email_aliases.first.id).to eq(new_alias.id)
|
338
|
-
|
339
|
-
puts "remove email alias for user"
|
340
|
-
result = BOX_CLIENT.remove_email_alias_for_user(@test_user, new_alias.id)
|
341
|
-
expect(result).to eq({})
|
342
|
-
|
343
|
-
puts "delete user"
|
344
|
-
result = BOX_CLIENT.delete_user(@test_user, force: true)
|
345
|
-
expect(result).to eq({})
|
346
|
-
end
|
347
|
-
|
348
|
-
#rake spec SPEC_OPTS="-e \"invokes group operations"\"
|
349
|
-
it "invokes group operations" do
|
350
|
-
puts "create group"
|
351
|
-
group = BOX_CLIENT.create_group(TEST_GROUP_NAME)
|
352
|
-
expect(group.name).to eq(TEST_GROUP_NAME)
|
353
|
-
|
354
|
-
puts "inspect groups"
|
355
|
-
groups = BOX_CLIENT.groups
|
356
|
-
test_group = groups.find{|g| g.name == TEST_GROUP_NAME}
|
357
|
-
expect(test_group).to_not be_nil
|
358
|
-
|
359
|
-
puts "update group"
|
360
|
-
new_name = "Test Boxr Group Renamed"
|
361
|
-
group = BOX_CLIENT.update_group(test_group, new_name)
|
362
|
-
expect(group.name).to eq(new_name)
|
363
|
-
group = BOX_CLIENT.rename_group(test_group,TEST_GROUP_NAME)
|
364
|
-
expect(group.name).to eq(TEST_GROUP_NAME)
|
365
|
-
|
366
|
-
puts "add user to group"
|
367
|
-
group_membership = BOX_CLIENT.add_user_to_group(@test_user, test_group)
|
368
|
-
expect(group_membership.user.id).to eq(@test_user.id)
|
369
|
-
expect(group_membership.group.id).to eq(test_group.id)
|
370
|
-
membership = group_membership
|
371
|
-
|
372
|
-
puts "inspect group membership"
|
373
|
-
group_membership = BOX_CLIENT.group_membership(membership)
|
374
|
-
expect(group_membership.id).to eq(membership.id)
|
375
|
-
|
376
|
-
puts "inspect group memberships"
|
377
|
-
group_memberships = BOX_CLIENT.group_memberships(test_group)
|
378
|
-
expect(group_memberships.count).to eq(1)
|
379
|
-
expect(group_memberships.first.id).to eq(membership.id)
|
380
|
-
|
381
|
-
puts "inspect group memberships for a user"
|
382
|
-
group_memberships = BOX_CLIENT.group_memberships_for_user(@test_user)
|
383
|
-
expect(group_memberships.count).to eq(1)
|
384
|
-
expect(group_memberships.first.id).to eq(membership.id)
|
385
|
-
|
386
|
-
puts "inspect group memberships for me"
|
387
|
-
#this is whatever user your developer token is tied to
|
388
|
-
group_memberships = BOX_CLIENT.group_memberships_for_me
|
389
|
-
expect(group_memberships).to be_a(Array)
|
390
|
-
|
391
|
-
puts "update group membership"
|
392
|
-
group_membership = BOX_CLIENT.update_group_membership(membership, :admin)
|
393
|
-
expect(group_membership.role).to eq("admin")
|
394
|
-
|
395
|
-
puts "delete group membership"
|
396
|
-
result = BOX_CLIENT.delete_group_membership(membership)
|
397
|
-
expect(result).to eq({})
|
398
|
-
group_memberships = BOX_CLIENT.group_memberships_for_user(@test_user)
|
399
|
-
expect(group_memberships.count).to eq(0)
|
400
|
-
|
401
|
-
puts "inspect group collaborations"
|
402
|
-
group_collaboration = BOX_CLIENT.add_collaboration(@test_folder, {id: test_group.id, type: :group}, :editor)
|
403
|
-
expect(group_collaboration.accessible_by.id).to eq(test_group.id)
|
404
|
-
|
405
|
-
puts "delete group"
|
406
|
-
response = BOX_CLIENT.delete_group(test_group)
|
407
|
-
expect(response).to eq({})
|
408
|
-
end
|
409
|
-
|
410
|
-
#rake spec SPEC_OPTS="-e \"invokes comment operations"\"
|
411
|
-
it "invokes comment operations" do
|
412
|
-
new_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
413
|
-
test_file = new_file
|
414
|
-
|
415
|
-
puts "add comment to file"
|
416
|
-
comment = BOX_CLIENT.add_comment_to_file(test_file, message: COMMENT_MESSAGE)
|
417
|
-
expect(comment.message).to eq(COMMENT_MESSAGE)
|
418
|
-
COMMENT = comment
|
419
|
-
|
420
|
-
puts "reply to comment"
|
421
|
-
reply = BOX_CLIENT.reply_to_comment(COMMENT, message: REPLY_MESSAGE)
|
422
|
-
expect(reply.message).to eq(REPLY_MESSAGE)
|
423
|
-
|
424
|
-
puts "get file comments"
|
425
|
-
comments = BOX_CLIENT.file_comments(test_file)
|
426
|
-
expect(comments.count).to eq(2)
|
427
|
-
|
428
|
-
puts "update a comment"
|
429
|
-
comment = BOX_CLIENT.change_comment(COMMENT, CHANGED_COMMENT_MESSAGE)
|
430
|
-
expect(comment.message).to eq(CHANGED_COMMENT_MESSAGE)
|
431
|
-
|
432
|
-
puts "get comment info"
|
433
|
-
comment = BOX_CLIENT.comment(COMMENT)
|
434
|
-
expect(comment.id).to eq(COMMENT.id)
|
435
|
-
|
436
|
-
puts "delete comment"
|
437
|
-
result = BOX_CLIENT.delete_comment(COMMENT)
|
438
|
-
expect(result).to eq({})
|
439
|
-
end
|
440
|
-
|
441
|
-
#rake spec SPEC_OPTS="-e \"invokes collaborations operations"\"
|
442
|
-
it "invokes collaborations operations" do
|
443
|
-
puts "add collaboration"
|
444
|
-
collaboration = BOX_CLIENT.add_collaboration(@test_folder, {id: @test_user.id, type: :user}, :viewer_uploader)
|
445
|
-
expect(collaboration.accessible_by.id).to eq(@test_user.id)
|
446
|
-
COLLABORATION = collaboration
|
447
|
-
|
448
|
-
puts "inspect collaboration"
|
449
|
-
collaboration = BOX_CLIENT.collaboration(COLLABORATION)
|
450
|
-
expect(collaboration.id).to eq(COLLABORATION.id)
|
451
|
-
|
452
|
-
puts "edit collaboration"
|
453
|
-
collaboration = BOX_CLIENT.edit_collaboration(COLLABORATION, role: "viewer uploader")
|
454
|
-
expect(collaboration.role).to eq("viewer uploader")
|
455
|
-
|
456
|
-
puts "inspect folder collaborations"
|
457
|
-
collaborations = BOX_CLIENT.folder_collaborations(@test_folder)
|
458
|
-
expect(collaborations.count).to eq(1)
|
459
|
-
expect(collaborations[0].id).to eq(COLLABORATION.id)
|
460
|
-
|
461
|
-
puts "remove collaboration"
|
462
|
-
result = BOX_CLIENT.remove_collaboration(COLLABORATION)
|
463
|
-
expect(result).to eq({})
|
464
|
-
collaborations = BOX_CLIENT.folder_collaborations(@test_folder)
|
465
|
-
expect(collaborations.count).to eq(0)
|
466
|
-
|
467
|
-
puts "inspect pending collaborations"
|
468
|
-
pending_collaborations = BOX_CLIENT.pending_collaborations
|
469
|
-
expect(pending_collaborations).to eq([])
|
470
|
-
|
471
|
-
puts "add invalid collaboration"
|
472
|
-
expect { BOX_CLIENT.add_collaboration(@test_folder, {id: @test_user.id, type: :user}, :invalid_role)}.to raise_error
|
473
|
-
end
|
474
|
-
|
475
|
-
#rake spec SPEC_OPTS="-e \"invokes task operations"\"
|
476
|
-
it "invokes task operations" do
|
477
|
-
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
478
|
-
collaboration = BOX_CLIENT.add_collaboration(@test_folder, {id: @test_user.id, type: :user}, :editor)
|
479
|
-
|
480
|
-
puts "create task"
|
481
|
-
new_task = BOX_CLIENT.create_task(test_file, message: TEST_TASK_MESSAGE)
|
482
|
-
expect(new_task.message).to eq(TEST_TASK_MESSAGE)
|
483
|
-
TEST_TASK = new_task
|
484
|
-
|
485
|
-
puts "inspect file tasks"
|
486
|
-
tasks = BOX_CLIENT.file_tasks(test_file)
|
487
|
-
expect(tasks.first.id).to eq(TEST_TASK.id)
|
488
|
-
|
489
|
-
puts "inspect task"
|
490
|
-
task = BOX_CLIENT.task(TEST_TASK)
|
491
|
-
expect(task.id).to eq(TEST_TASK.id)
|
492
|
-
|
493
|
-
puts "update task"
|
494
|
-
NEW_TASK_MESSAGE = "new task message"
|
495
|
-
updated_task = BOX_CLIENT.update_task(TEST_TASK, message: NEW_TASK_MESSAGE)
|
496
|
-
expect(updated_task.message).to eq(NEW_TASK_MESSAGE)
|
497
|
-
|
498
|
-
puts "create task assignment"
|
499
|
-
task_assignment = BOX_CLIENT.create_task_assignment(TEST_TASK, assign_to: @test_user.id)
|
500
|
-
expect(task_assignment.assigned_to.id).to eq(@test_user.id)
|
501
|
-
TASK_ASSIGNMENT = task_assignment
|
502
|
-
|
503
|
-
puts "inspect task assignment"
|
504
|
-
task_assignment = BOX_CLIENT.task_assignment(TASK_ASSIGNMENT)
|
505
|
-
expect(task_assignment.id).to eq(TASK_ASSIGNMENT.id)
|
506
|
-
|
507
|
-
puts "inspect task assignments"
|
508
|
-
task_assignments = BOX_CLIENT.task_assignments(TEST_TASK)
|
509
|
-
expect(task_assignments.count).to eq(1)
|
510
|
-
expect(task_assignments[0].id).to eq(TASK_ASSIGNMENT.id)
|
511
|
-
|
512
|
-
#TODO: can't do this test yet because the test user needs to confirm their email address before you can do this
|
513
|
-
puts "update task assignment"
|
514
|
-
expect {
|
515
|
-
box_client_as_test_user = Boxr::Client.new(ENV['BOX_DEVELOPER_TOKEN'], as_user_id: @test_user.id)
|
516
|
-
new_message = "Updated task message"
|
517
|
-
task_assignment = box_client_as_test_user.update_task_assignment(TEST_TASK, resolution_state: :completed)
|
518
|
-
expect(task_assignment.resolution_state).to eq('completed')
|
519
|
-
}.to raise_error
|
520
|
-
|
521
|
-
puts "delete task assignment"
|
522
|
-
result = BOX_CLIENT.delete_task_assignment(TASK_ASSIGNMENT)
|
523
|
-
expect(result).to eq({})
|
524
|
-
|
525
|
-
puts "delete task"
|
526
|
-
result = BOX_CLIENT.delete_task(TEST_TASK)
|
527
|
-
expect(result).to eq({})
|
528
|
-
end
|
529
|
-
|
530
|
-
#rake spec SPEC_OPTS="-e \"invokes file metadata operations"\"
|
531
|
-
it "invokes file metadata operations" do
|
532
|
-
test_file = BOX_CLIENT.upload_file("./spec/test_files/#{TEST_FILE_NAME}", @test_folder)
|
533
|
-
|
534
|
-
puts "create metadata"
|
535
|
-
meta = {"a" => "hello", "b" => "world"}
|
536
|
-
metadata = BOX_CLIENT.create_metadata(test_file, meta)
|
537
|
-
expect(metadata.a).to eq("hello")
|
538
|
-
|
539
|
-
puts "update metadata"
|
540
|
-
metadata = BOX_CLIENT.update_metadata(test_file, {op: :replace, path: "/b", value: "there"})
|
541
|
-
expect(metadata.b).to eq("there")
|
542
|
-
metadata = BOX_CLIENT.update_metadata(test_file, [{op: :replace, path: "/b", value: "friend"}])
|
543
|
-
expect(metadata.b).to eq("friend")
|
544
|
-
|
545
|
-
puts "get metadata"
|
546
|
-
metadata = BOX_CLIENT.metadata(test_file)
|
547
|
-
expect(metadata.a).to eq("hello")
|
548
|
-
|
549
|
-
puts "delete metadata"
|
550
|
-
result = BOX_CLIENT.delete_metadata(test_file)
|
551
|
-
expect(result).to eq({})
|
552
|
-
end
|
553
|
-
|
554
|
-
#rake spec SPEC_OPTS="-e \"invokes folder metadata operations"\"
|
555
|
-
#NOTE: this test will fail unless you create a metadata template called 'test' with two attributes: 'a' of type text, and 'b' of type text
|
556
|
-
it "invokes folder metadata operations" do
|
557
|
-
new_folder = BOX_CLIENT.create_folder(SUB_FOLDER_NAME, @test_folder)
|
558
|
-
|
559
|
-
puts "create folder metadata"
|
560
|
-
meta = {"a" => "hello", "b" => "world"}
|
561
|
-
metadata = BOX_CLIENT.create_folder_metadata(new_folder, meta, "enterprise", "test")
|
562
|
-
expect(metadata.a).to eq("hello")
|
563
|
-
|
564
|
-
puts "update folder metadata"
|
565
|
-
metadata = BOX_CLIENT.update_folder_metadata(new_folder, {op: :replace, path: "/b", value: "there"}, "enterprise", "test")
|
566
|
-
expect(metadata.b).to eq("there")
|
567
|
-
metadata = BOX_CLIENT.update_folder_metadata(new_folder, [{op: :replace, path: "/b", value: "friend"}], "enterprise", "test")
|
568
|
-
expect(metadata.b).to eq("friend")
|
569
|
-
|
570
|
-
puts "get folder metadata"
|
571
|
-
metadata = BOX_CLIENT.folder_metadata(new_folder, "enterprise", "test")
|
572
|
-
expect(metadata.a).to eq("hello")
|
573
|
-
|
574
|
-
puts "delete folder metadata"
|
575
|
-
result = BOX_CLIENT.delete_folder_metadata(new_folder, "enterprise", "test")
|
576
|
-
expect(result).to eq({})
|
577
|
-
end
|
578
|
-
|
579
|
-
#rake spec SPEC_OPTS="-e \"invokes search operations"\"
|
580
|
-
it "invokes search operations" do
|
581
|
-
#the issue with this test is that Box can take between 5-10 minutes to index any content uploaded; this is just a smoke test
|
582
|
-
#so we are searching for something that should return zero results
|
583
|
-
puts "perform search"
|
584
|
-
results = BOX_CLIENT.search("sdlfjuwnsljsdfuqpoiqweouyvnnadsfkjhiuweruywerbjvhvkjlnasoifyukhenlwdflnsdvoiuawfydfjh")
|
585
|
-
expect(results).to eq([])
|
586
|
-
end
|
587
|
-
|
588
38
|
end
|