bfs 0.4.3 → 0.4.4

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: a07dd366e21cd6cef46aa02a1097e245cb74d099b5534277ed47b5bfeecca700
4
- data.tar.gz: d02a0438cb7f2a1937725d5835edb8aa30c27be641495dfcdfe4cd72eb2f08a2
3
+ metadata.gz: 3115a351e861d29c6a6f6ccbc249bdc6c9ecb8aa8d3920124db6e556fd1f0c6f
4
+ data.tar.gz: b98132bf36cc3ce7d34958253f23b7dab386b4b9a2c5bb7480d017d56b41e0c5
5
5
  SHA512:
6
- metadata.gz: 03ec7123160acf6499856b7036b0b7f5f53c7c80c7a432b30e59e37f83f81603b91c75d642feeb6dc15935024a1e804d0d2929d70d76e5a397d55bc4f52d2593
7
- data.tar.gz: e1dcefdf1d13cfad65627f51d70c24e59cf3027e00719cd0fae2f771174b8b42768d2839b21a463f1e0cd3a3f68c35c2a2401829c30bb67f0eaefb414df52b7b
6
+ metadata.gz: 4992de998a6b74e54d41d44d8061418cabfeb2c86f581c07bd4a5557a1684aa821e17655668184a21e57e9f352ad0e302c66a3b4d443e84331e37d89c4c6ddbc
7
+ data.tar.gz: de0e32d0a38f045864f86ea837d188fd3dbb72cad1695386c4abb0d38ee3bececefd828d8b7efcee332d7a50d7ae5eaa36b7f7b33e1332560ba6f207c58a12bf
@@ -1,22 +1,12 @@
1
1
  require 'tempfile'
2
+ require 'delegate'
2
3
 
3
4
  module BFS
4
- class TempWriter
5
+ class TempWriter < DelegateClass(::Tempfile)
5
6
  def initialize(name, opts={}, &closer)
6
- @closer = closer
7
+ @closer = closer
7
8
  @tempfile = ::Tempfile.new(File.basename(name.to_s), opts)
8
- end
9
-
10
- def path
11
- @tempfile.path
12
- end
13
-
14
- def write(data)
15
- @tempfile.write(data)
16
- end
17
-
18
- def closed?
19
- @tempfile.closed?
9
+ super @tempfile
20
10
  end
21
11
 
22
12
  def close
@@ -0,0 +1,16 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe BFS::TempWriter do
4
+ let(:closer) { proc {} }
5
+ subject { described_class.new 'test', nil, &closer }
6
+
7
+ it 'should behave like a File' do
8
+ missing = ::File.public_instance_methods - subject.public_methods
9
+ expect(missing).to be_empty
10
+ end
11
+
12
+ it 'should exectute a closer block' do
13
+ expect(closer).to receive(:call).with(subject.path)
14
+ expect(subject.close).to be_truthy
15
+ end
16
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dimitrij Denissenko
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-19 00:00:00.000000000 Z
11
+ date: 2019-09-27 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Minimalist abstraction for bucket storage
14
14
  email: dimitrij@blacksquaremedia.com
@@ -28,6 +28,7 @@ files:
28
28
  - spec/bfs/blob_spec.rb
29
29
  - spec/bfs/bucket/fs_spec.rb
30
30
  - spec/bfs/bucket/in_mem_spec.rb
31
+ - spec/bfs/helpers_spec.rb
31
32
  homepage: https://github.com/bsm/bfs.rb
32
33
  licenses:
33
34
  - Apache-2.0
@@ -55,3 +56,4 @@ test_files:
55
56
  - spec/bfs/blob_spec.rb
56
57
  - spec/bfs/bucket/fs_spec.rb
57
58
  - spec/bfs/bucket/in_mem_spec.rb
59
+ - spec/bfs/helpers_spec.rb