bfs-gs 0.7.1 → 0.7.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0205b7e3e0a0657a5573c76e214761e8cb094370a9ec9f2e438a917cac121ea7
4
- data.tar.gz: 73482e997b5d16fdbc0e18fbf3c40aa70316d41a0540aafd1e04f7be7cdf4742
3
+ metadata.gz: 204c52d94cef4322f9995de8bb647fab8db26bf4887168b43cfc9ca09d4bcc3a
4
+ data.tar.gz: e1e1645d86d891053ee41ae8c177ee4c26fb37613c46195016dfe93ee8c19750
5
5
  SHA512:
6
- metadata.gz: 62bfd2c665b53f6ba4cd9e80a57d8014337a771cae1b1bc129e720959163f9c99de6b881e3bbe8e4aa4e9075d4db40bd29fc414387519f66255271b89a16d12e
7
- data.tar.gz: 5f1c3741bf46866c0917b908f7cc778087a9e97a04003dbade21f9e5e8e5d51f740cbc30b570a6f3112b91b606741b353f75dad1da40af289bc8de979b0668e8
6
+ metadata.gz: 0f7967ca40b047be697f909e853bdfa8db2dec44efbbb19c6f4e6ac8e711c5042b7fc43e5beb0a7f479da2dcfe32ffaadff7a7d1529af38d629e062e7314b33d
7
+ data.tar.gz: e1b5ec3d09f475ab2f09bb31a3a3a6e7c6b83c33a2792ceb02c2ebcb00adb6eabe21bc021d12058a3b7e59c94158e01106aaabc8d675188d41a31b4c36eaa904
@@ -59,18 +59,11 @@ module BFS
59
59
  def create(path, encoding: self.encoding, perm: self.perm, **opts, &block)
60
60
  opts[:metadata] = norm_meta(opts[:metadata])
61
61
  path = full_path(path)
62
- temp = BFS::TempWriter.new(path, encoding: encoding, perm: perm) do |t|
62
+ BFS::TempWriter.new(path, encoding: encoding, perm: perm) do |t|
63
63
  File.open(t, encoding: encoding) do |file|
64
64
  @bucket.create_file(file, path, **opts)
65
65
  end
66
- end
67
- return temp unless block
68
-
69
- begin
70
- yield temp
71
- ensure
72
- temp.close
73
- end
66
+ end.perform(&block)
74
67
  end
75
68
 
76
69
  # Opens an existing file for reading
@@ -6,43 +6,39 @@ module Google::Auth::CredentialsLoader
6
6
  module_function :warn_if_cloud_sdk_credentials # rubocop:disable Style/AccessModifierDeclarations
7
7
  end
8
8
 
9
- sandbox = { project: 'bogus', bucket: 'bsm-bfs-unittest' }.freeze
10
- run_spec = \
11
- begin
12
- s = Google::Cloud::Storage.new(project_id: sandbox[:project])
13
- !s.bucket(sandbox[:bucket]).nil?
14
- rescue Signet::AuthorizationError => e
15
- warn "WARNING: unable to run #{File.basename __FILE__}: #{e.message}"
16
- false
17
- end
9
+ bucket_name = 'bsm-bfs-unittest'
18
10
 
19
- RSpec.describe BFS::Bucket::GS, if: run_spec do
11
+ RSpec.describe BFS::Bucket::GS, gs: true do
20
12
  let(:prefix) { "x/#{SecureRandom.uuid}/" }
21
13
 
22
14
  subject do
23
- described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: prefix
15
+ described_class.new bucket_name, prefix: prefix
24
16
  end
17
+
25
18
  after :all do
26
- bucket = described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: 'x/'
19
+ bucket = described_class.new bucket_name, prefix: 'x/'
27
20
  bucket.ls.each {|name| bucket.rm(name) }
28
21
  end
29
22
 
30
23
  it_behaves_like 'a bucket'
31
24
 
32
25
  it 'should resolve from URL' do
33
- bucket = BFS.resolve("gs://#{sandbox[:bucket]}/?project_id=#{sandbox[:project]}")
26
+ bucket = BFS.resolve("gs://#{bucket_name}")
34
27
  expect(bucket).to be_instance_of(described_class)
35
- expect(bucket.name).to eq(sandbox[:bucket])
28
+ expect(bucket.name).to eq(bucket_name)
36
29
  expect(bucket.instance_variable_get(:@prefix)).to be_nil
30
+ bucket.close
37
31
 
38
- bucket = BFS.resolve("gs://#{sandbox[:bucket]}/a/b/")
32
+ bucket = BFS.resolve("gs://#{bucket_name}/a/b/")
39
33
  expect(bucket).to be_instance_of(described_class)
40
- expect(bucket.name).to eq(sandbox[:bucket])
34
+ expect(bucket.name).to eq(bucket_name)
41
35
  expect(bucket.instance_variable_get(:@prefix)).to eq('a/b')
36
+ bucket.close
42
37
  end
43
38
 
44
39
  it 'should enumerate over a large number of files' do
45
- bucket = described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: 'm/'
40
+ bucket = described_class.new bucket_name, prefix: 'm/'
46
41
  expect(bucket.ls('**/*').count).to eq(2121)
42
+ bucket.close
47
43
  end
48
44
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bfs-gs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.7.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitrij Denissenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-07-02 00:00:00.000000000 Z
11
+ date: 2020-11-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bfs
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.7.1
19
+ version: 0.7.6
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.7.1
26
+ version: 0.7.6
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: google-cloud-storage
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -67,7 +67,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  requirements: []
70
- rubygems_version: 3.1.4
70
+ rubygems_version: 3.1.2
71
71
  signing_key:
72
72
  specification_version: 4
73
73
  summary: GS bucket adapter for bfs