sugar_utils 0.3.0 → 0.4.0
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 +4 -4
- data/CHANGELOG.md +5 -0
- data/Rakefile +2 -2
- data/lib/sugar_utils/file.rb +8 -0
- data/lib/sugar_utils/version.rb +1 -1
- data/spec/spec_helper.rb +0 -2
- data/spec/sugar_utils/file_spec.rb +21 -0
- data/sugar_utils.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f1742a971ec43f0580b8a66eb40a6068f0bd70a5
|
4
|
+
data.tar.gz: 35a2e24ceb3eeac3109f9e9d300c20ea7a59ffe6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82dd25fd3f8de787bf325343a948f44bc6f539d65b5b29f2476ae3f24fe235422159129184998cafc0505597a215e69d47a725e17e60ed8f40068de84090f4e6
|
7
|
+
data.tar.gz: 95b3f9228923c4aad53fb11d4d7a42a31b8ac832480aac4dc338f6859006f596765e9e8f5f853b053d83cb58afed9e19f2d6f68e682692b323f005deff94499a
|
data/CHANGELOG.md
CHANGED
@@ -2,6 +2,11 @@
|
|
2
2
|
All notable changes to this project will be documented in this file.
|
3
3
|
This project adheres to [Semantic Versioning](http://semver.org/).
|
4
4
|
|
5
|
+
## [0.4.0] - 2017-05-17
|
6
|
+
### Added
|
7
|
+
- SugarUtils::File.touch, which will ensure the directory before touching the
|
8
|
+
specified file
|
9
|
+
|
5
10
|
## [0.3.0] - 2017-03-29
|
6
11
|
### Added
|
7
12
|
- SugarUtils::File.read, with locking and error handling when reading a plain
|
data/Rakefile
CHANGED
@@ -11,7 +11,7 @@ RSpec::Core::RakeTask.new(:spec)
|
|
11
11
|
|
12
12
|
RuboCop::RakeTask.new(:rubocop) do |task|
|
13
13
|
FileUtils.mkdir_p('tmp')
|
14
|
-
task.options = %w
|
14
|
+
task.options = %w[--format progress --format simple --out tmp/rubocop.txt]
|
15
15
|
end
|
16
16
|
|
17
17
|
YARD::Rake::YardocTask.new do |t|
|
@@ -23,6 +23,6 @@ Yardstick::Rake::Measurement.new(:yardstick_measure) do |measurement|
|
|
23
23
|
measurement.output = 'tmp/yard_coverage.txt'
|
24
24
|
end
|
25
25
|
|
26
|
-
task quality: %i
|
26
|
+
task quality: %i[rubocop yardstick_measure]
|
27
27
|
|
28
28
|
task default: [:spec]
|
data/lib/sugar_utils/file.rb
CHANGED
@@ -73,6 +73,14 @@ module SugarUtils
|
|
73
73
|
raise(Error, "Cannot parse #{filename}")
|
74
74
|
end
|
75
75
|
|
76
|
+
# @param [String] filename
|
77
|
+
#
|
78
|
+
# @return [void]
|
79
|
+
def self.touch(filename)
|
80
|
+
FileUtils.mkdir_p(::File.dirname(filename))
|
81
|
+
FileUtils.touch(filename)
|
82
|
+
end
|
83
|
+
|
76
84
|
# @param [String] filename
|
77
85
|
# @param [#to_s] data
|
78
86
|
# @param [Hash] options
|
data/lib/sugar_utils/version.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -17,9 +17,7 @@ SimpleCov.start
|
|
17
17
|
SolidAssert.enable_assertions
|
18
18
|
|
19
19
|
RSpec.configure do |config|
|
20
|
-
# rubocop:disable Style/MixinGrouping
|
21
20
|
config.include FakeFS::SpecHelpers, fakefs: true
|
22
|
-
# rubocop:enable all
|
23
21
|
end
|
24
22
|
|
25
23
|
RSpec::Matchers.define :have_json_content do |expected|
|
@@ -97,6 +97,27 @@ describe SugarUtils::File do
|
|
97
97
|
it_with Hash['key' => 'value'].to_json, Hash['key' => 'value']
|
98
98
|
end
|
99
99
|
|
100
|
+
describe '.touch', :fakefs do
|
101
|
+
subject { described_class.touch(filename) }
|
102
|
+
|
103
|
+
before { subject }
|
104
|
+
|
105
|
+
context 'without path' do
|
106
|
+
let(:filename) { 'filename' }
|
107
|
+
it { expect(File.exist?(filename)).to eq(true) }
|
108
|
+
end
|
109
|
+
|
110
|
+
context 'with path' do
|
111
|
+
let(:filename) { 'path1/path2/filename' }
|
112
|
+
it { expect(File.exist?(filename)).to eq(true) }
|
113
|
+
end
|
114
|
+
|
115
|
+
context 'with absolute path' do
|
116
|
+
let(:filename) { '/path1/path2/filename' }
|
117
|
+
it { expect(File.exist?(filename)).to eq(true) }
|
118
|
+
end
|
119
|
+
end
|
120
|
+
|
100
121
|
describe '.write', :fakefs do
|
101
122
|
subject { described_class.write(filename, data, options) }
|
102
123
|
let(:data) { 'content' }
|
data/sugar_utils.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
|
|
20
20
|
|
21
21
|
spec.required_ruby_version = '>= 2.0.0'
|
22
22
|
|
23
|
-
spec.add_dependency 'multi_json', '~> 1.
|
23
|
+
spec.add_dependency 'multi_json', '~> 1.0'
|
24
24
|
spec.add_dependency 'solid_assert', '~> 1.0'
|
25
25
|
|
26
26
|
spec.add_development_dependency 'bundler', '~> 1.7'
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sugar_utils
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Sullivan Cant
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-05-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: multi_json
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: '1.0'
|
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: 1.
|
26
|
+
version: '1.0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: solid_assert
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|