minitest-filesystem 1.1.0 → 1.1.1
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
- checksums.yaml.gz.sig +0 -0
- data/README.md +4 -0
- data/Rakefile +10 -0
- data/lib/minitest/filesystem/matcher.rb +29 -15
- data/lib/minitest/filesystem/version.rb +1 -1
- data/minitest-filesystem.gemspec +2 -0
- data.tar.gz.sig +0 -0
- metadata +30 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1f50869c9e1a8567409b58a165057b3e23766bc
|
4
|
+
data.tar.gz: f51c45d5eb02b7efa117ba22ae50086750379e04
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e482bc5bfe18c51fcc4288d57462f5927b9c6378b84e291d99eadd425731332beddaa6674ad66ecc021ba7f522d4e1c91e3922fe0f01a99b8c875da763e13de3
|
7
|
+
data.tar.gz: 5f4e68d4dc3563af02e74348e69c2fbb2c2c9ab647d3ccc8e338c54c6d69a95beea86209de2abeb3bf71492b950c847edd783a86ffd1d2f66849055a315a87c7
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/README.md
CHANGED
data/Rakefile
CHANGED
@@ -9,4 +9,14 @@ Rake::TestTask.new do |t|
|
|
9
9
|
t.verbose = true
|
10
10
|
end
|
11
11
|
|
12
|
+
desc "Analyze code duplication"
|
13
|
+
task :flay do
|
14
|
+
system "flay lib/**/*.rb"
|
15
|
+
end
|
16
|
+
|
17
|
+
desc "Analyze code complexity"
|
18
|
+
task :flog do
|
19
|
+
system "find lib -name \*.rb | xargs flog"
|
20
|
+
end
|
21
|
+
|
12
22
|
task :default => :test
|
@@ -10,17 +10,17 @@ module Minitest
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def file(file)
|
13
|
-
|
13
|
+
exists?(file, :file)
|
14
14
|
end
|
15
15
|
|
16
16
|
def link(link, target=nil)
|
17
|
-
|
17
|
+
exists?(link, :symlink) && is_target_correct?(link, target)
|
18
18
|
end
|
19
19
|
|
20
20
|
def dir(dir, &block)
|
21
21
|
matcher = self.class.new(@actual_tree.expand_path(dir), &block) if block_given?
|
22
22
|
|
23
|
-
|
23
|
+
exists?(dir, :directory) && subtree(matcher)
|
24
24
|
end
|
25
25
|
|
26
26
|
def match_found?
|
@@ -34,17 +34,33 @@ module Minitest
|
|
34
34
|
|
35
35
|
private
|
36
36
|
|
37
|
+
# Checks existance of specified entry.
|
38
|
+
# Existance is defined both in terms of presence and of being of the
|
39
|
+
# right type (e.g. a file being a file and not a directory)
|
40
|
+
def exists?(entry, kind=:entry)
|
41
|
+
entry(entry, kind) && is_a?(entry, kind)
|
42
|
+
end
|
43
|
+
|
44
|
+
# Checks if an entry with given name exists.
|
37
45
|
def entry(entry, kind=:entry)
|
38
46
|
update_matching_status(
|
39
47
|
@actual_tree.include?(entry),
|
40
48
|
not_found_msg_for(entry, kind))
|
41
49
|
end
|
42
50
|
|
51
|
+
# Checks if a specific entry (supposed to exist) is of a given kind.
|
52
|
+
def is_a?(entry, kind)
|
53
|
+
update_matching_status(
|
54
|
+
@actual_tree.is_a?(entry, kind),
|
55
|
+
mismatch_msg_for(entry, kind))
|
56
|
+
end
|
57
|
+
|
58
|
+
# Checks the target of a symbolic link.
|
43
59
|
def is_target_correct?(link, target)
|
44
60
|
return true unless target
|
45
61
|
|
46
62
|
update_matching_status(
|
47
|
-
@actual_tree.
|
63
|
+
@actual_tree.has_target?(link, target),
|
48
64
|
link_target_mismatch_msg_for(link, target))
|
49
65
|
end
|
50
66
|
|
@@ -52,16 +68,6 @@ module Minitest
|
|
52
68
|
update_matching_status(matcher.match_found?, matcher.message) if matcher
|
53
69
|
end
|
54
70
|
|
55
|
-
def follow_link(link)
|
56
|
-
Pathname.new(File.readlink(link))
|
57
|
-
end
|
58
|
-
|
59
|
-
def is_a?(entry, kind)
|
60
|
-
update_matching_status(
|
61
|
-
@actual_tree.is_a?(entry, kind),
|
62
|
-
mismatch_msg_for(entry, kind))
|
63
|
-
end
|
64
|
-
|
65
71
|
def update_matching_status(check, msg)
|
66
72
|
@is_matching = @is_matching && check
|
67
73
|
set_failure_msg(msg) unless @is_matching
|
@@ -78,7 +84,7 @@ module Minitest
|
|
78
84
|
end
|
79
85
|
|
80
86
|
def link_target_mismatch_msg_for(link, target)
|
81
|
-
"Expected `#{link}` to point to `#{target}`, but it pointed to #{
|
87
|
+
"Expected `#{link}` to point to `#{target}`, but it pointed to #{@actual_tree.follow_link(link)}"
|
82
88
|
end
|
83
89
|
|
84
90
|
def set_failure_msg(msg)
|
@@ -100,11 +106,19 @@ module Minitest
|
|
100
106
|
def is_a?(entry, kind)
|
101
107
|
(expand_path entry).send("#{kind}?")
|
102
108
|
end
|
109
|
+
|
110
|
+
def has_target?(entry, target)
|
111
|
+
expand_path(target) == follow_link(entry)
|
112
|
+
end
|
103
113
|
|
104
114
|
def expand_path(file)
|
105
115
|
@root + Pathname.new(file)
|
106
116
|
end
|
107
117
|
|
118
|
+
def follow_link(link)
|
119
|
+
Pathname.new(File.readlink(expand_path(link)))
|
120
|
+
end
|
121
|
+
|
108
122
|
private
|
109
123
|
|
110
124
|
def expand_tree_under(dir)
|
data/minitest-filesystem.gemspec
CHANGED
@@ -27,6 +27,8 @@ Gem::Specification.new do |gem|
|
|
27
27
|
gem.add_development_dependency "rake"
|
28
28
|
gem.add_development_dependency "minitest"
|
29
29
|
gem.add_development_dependency "coveralls"
|
30
|
+
gem.add_development_dependency "flog"
|
31
|
+
gem.add_development_dependency "flay"
|
30
32
|
|
31
33
|
gem.signing_key = Pathname.new(signing_key_file).expand_path if signing_key_file
|
32
34
|
gem.cert_chain = ["rubygems-stefanozanella.crt"]
|
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: minitest-filesystem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Stefano Zanella
|
@@ -29,7 +29,7 @@ cert_chain:
|
|
29
29
|
RigBD0E3/t/ABjCXkmqwp5gnAZmP8JiVUkn8rp5E0FXvC8T7nsPs2TW/TAmUV6rN
|
30
30
|
hK25FX8YWgT9fD9y3PpWjiYcrCo=
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date: 2013-09-
|
32
|
+
date: 2013-09-06 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: bundler
|
@@ -87,6 +87,34 @@ dependencies:
|
|
87
87
|
- - '>='
|
88
88
|
- !ruby/object:Gem::Version
|
89
89
|
version: '0'
|
90
|
+
- !ruby/object:Gem::Dependency
|
91
|
+
name: flog
|
92
|
+
requirement: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
type: :development
|
98
|
+
prerelease: false
|
99
|
+
version_requirements: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - '>='
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
- !ruby/object:Gem::Dependency
|
105
|
+
name: flay
|
106
|
+
requirement: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
type: :development
|
112
|
+
prerelease: false
|
113
|
+
version_requirements: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
90
118
|
description: Minitest exstension to check filesystem contents
|
91
119
|
email:
|
92
120
|
- zanella.stefano@gmail.com
|
metadata.gz.sig
CHANGED
Binary file
|