bfs-gs 0.7.3 → 0.8.1

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: ba5632283f82b8a38d0f25ccc839948c8d45fcdd81da8ed4bc3ab9154f62becb
4
- data.tar.gz: eaed2684e48c0cb4cad20c51b1635ae4c4c2d173d4fdbe994e7a4f59ff760f8b
3
+ metadata.gz: '08fac95d84875eeb3873d5aa39d8ab7ec900bb4225580c9dbe4da12702401cdc'
4
+ data.tar.gz: 043fad275f4abc414612801862411daeb3a33dd3e391d87a868ec701d5f9dbed
5
5
  SHA512:
6
- metadata.gz: f06d8e618fc56f661c965875d5597fd1a0c692c30f23e3e67d81c0889b9e37d309a211f88c51146f674a09b858be5f060a813ea95bcfb8379ca532191caa25dd
7
- data.tar.gz: aa7dced6719a04c98817e4466b514598614b2319f4fdf597dcf650bc1760c2548a3258651dc2e74f3ee2ef54d7d7ce652745e1ce308d219da4032c336abd0597
6
+ metadata.gz: 34b884c86445d6df45e098ceac85218efa76adea349e3d39f86a99eb7f92401be939b60fab6bdcc83e95dcaaf44a3da48e08c555fadda819806200d9f9dbdffa
7
+ data.tar.gz: 6fbdecadf4bb512bdf2bf6bbf224eea34646c7f915c50a8fc7f4ba9e2308c5401a4b8ed2811e7d7690502a5b4e8ac628b0e611d02f8558fdf953cbfb11107bc4
data/lib/bfs/bucket/gs.rb CHANGED
@@ -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::Writer.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,37 +6,38 @@ 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
9
+ bucket_name = 'bsm-bfs-unittest'
10
10
 
11
11
  RSpec.describe BFS::Bucket::GS, gs: true do
12
- let(:prefix) { "x/#{SecureRandom.uuid}/" }
13
-
14
12
  subject do
15
- described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: prefix
13
+ described_class.new bucket_name, prefix: prefix
16
14
  end
17
- after :all do
18
- bucket = described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: 'x/'
15
+
16
+ let(:prefix) { "x/#{SecureRandom.uuid}/" }
17
+
18
+ after :all do # rubocop:disable RSpec/BeforeAfterAll
19
+ bucket = described_class.new bucket_name, prefix: 'x/'
19
20
  bucket.ls.each {|name| bucket.rm(name) }
20
21
  end
21
22
 
22
23
  it_behaves_like 'a bucket'
23
24
 
24
- it 'should resolve from URL' do
25
- bucket = BFS.resolve("gs://#{sandbox[:bucket]}/?project_id=#{sandbox[:project]}")
25
+ it 'resolves from URL' do
26
+ bucket = BFS.resolve("gs://#{bucket_name}")
26
27
  expect(bucket).to be_instance_of(described_class)
27
- expect(bucket.name).to eq(sandbox[:bucket])
28
+ expect(bucket.name).to eq(bucket_name)
28
29
  expect(bucket.instance_variable_get(:@prefix)).to be_nil
29
30
  bucket.close
30
31
 
31
- bucket = BFS.resolve("gs://#{sandbox[:bucket]}/a/b/")
32
+ bucket = BFS.resolve("gs://#{bucket_name}/a/b/")
32
33
  expect(bucket).to be_instance_of(described_class)
33
- expect(bucket.name).to eq(sandbox[:bucket])
34
+ expect(bucket.name).to eq(bucket_name)
34
35
  expect(bucket.instance_variable_get(:@prefix)).to eq('a/b')
35
36
  bucket.close
36
37
  end
37
38
 
38
- it 'should enumerate over a large number of files' do
39
- bucket = described_class.new sandbox[:bucket], project_id: sandbox[:project], prefix: 'm/'
39
+ it 'enumerates over a large number of files' do
40
+ bucket = described_class.new bucket_name, prefix: 'm/'
40
41
  expect(bucket.ls('**/*').count).to eq(2121)
41
42
  bucket.close
42
43
  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.3
4
+ version: 0.8.1
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-10 00:00:00.000000000 Z
11
+ date: 2021-02-04 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.3
19
+ version: 0.8.1
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.3
26
+ version: 0.8.1
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: google-cloud-storage
29
29
  requirement: !ruby/object:Gem::Requirement