bfs 0.4.3 → 0.4.4

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