bfs-gs 0.7.1 → 0.7.6

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 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