warningshot 0.9.4 → 0.9.5
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.
- data/CHANGELOG +8 -0
- data/CONTRIBUTORS +2 -1
- data/README +86 -6
- data/Rakefile +4 -3
- data/TODO +1 -147
- data/bin/warningshot +11 -7
- data/lib/resolvers/core_lib_resolver.rb +2 -3
- data/lib/resolvers/directory_resolver.rb +1 -1
- data/lib/resolvers/file_resolver.rb +35 -17
- data/lib/resolvers/gem_resolver.rb +81 -60
- data/lib/resolvers/integrity_resolver.rb +10 -11
- data/lib/resolvers/manual_resolver.rb +15 -3
- data/lib/resolvers/permission_resolver.rb +6 -8
- data/lib/resolvers/symlink_resolver.rb +13 -8
- data/lib/resolvers/url_resolver.rb +28 -41
- data/lib/warningshot.rb +10 -7
- data/lib/warningshot/config.rb +254 -0
- data/lib/{warning_shot → warningshot}/dependency_resolver.rb +38 -17
- data/lib/{warning_shot → warningshot}/growl.rb +2 -0
- data/lib/{warning_shot → warningshot}/logger.rb +2 -0
- data/lib/{warning_shot → warningshot}/resolver.rb +177 -89
- data/lib/warningshot/suite.rb +4 -0
- data/lib/{warning_shot → warningshot}/template_generator.rb +4 -1
- data/lib/{warning_shot → warningshot}/version.rb +3 -1
- data/lib/warningshot/warning_shot.rb +187 -0
- data/tasks/gemspec.rb +3 -16
- data/tasks/yard.rb +1 -1
- data/templates/gems.yml +1 -0
- data/test/data/faux_test.yml +5 -0
- data/test/data/faux_test_resolver.rb +21 -0
- data/test/data/mock_resolver.rb +11 -5
- data/test/log/warningshot.log +3051 -532
- data/test/spec/unit/resolvers/core_lib_resolver_spec.rb +1 -1
- data/test/spec/unit/resolvers/directory_resolver_spec.rb +1 -1
- data/test/spec/unit/resolvers/file_resolver_spec.rb +9 -13
- data/test/spec/unit/resolvers/gem_resolver_spec.rb +108 -32
- data/test/spec/unit/resolvers/integrity_resolver_spec.rb +6 -6
- data/test/spec/unit/resolvers/permission_resolver_spec.rb +2 -2
- data/test/spec/unit/resolvers/symlink_resolver_spec.rb +8 -1
- data/test/spec/unit/resolvers/url_resolver_spec.rb +10 -10
- data/test/spec/unit/warningshot/config_spec.rb +57 -0
- data/test/spec/unit/{warning_shot → warningshot}/dependency_resolver_spec.rb +18 -9
- data/test/spec/unit/{warning_shot → warningshot}/resolver_spec.rb +54 -79
- data/test/spec/unit/{warning_shot → warningshot}/template_generator_spec.rb +1 -1
- data/test/spec/unit/{warning_shot → warningshot}/version_spec.rb +0 -0
- data/test/spec/unit/{warning_shot → warningshot}/warning_shot_spec.rb +0 -0
- metadata +24 -26
- data/lib/warning_shot/config.rb +0 -132
- data/lib/warning_shot/warning_shot.rb +0 -130
- data/test/spec/spec.opts.zoiks +0 -0
- data/test/spec/unit/warning_shot/config_spec.rb +0 -35
@@ -1,130 +0,0 @@
|
|
1
|
-
module WarningShot
|
2
|
-
BeforeCallbacks= []
|
3
|
-
AfterCallbacks = []
|
4
|
-
|
5
|
-
PATHS = {
|
6
|
-
:templates => 'templates',
|
7
|
-
:images => 'images',
|
8
|
-
:resolvers => 'lib' / 'warning_shot' / 'resolvers'
|
9
|
-
}
|
10
|
-
|
11
|
-
ConfigExt = "*.{yml,yaml}".freeze
|
12
|
-
|
13
|
-
class << self
|
14
|
-
def root
|
15
|
-
File.expand_path(File.dirname(__FILE__)) / ".." / ".."
|
16
|
-
end
|
17
|
-
|
18
|
-
def hostname
|
19
|
-
`hostname`.strip
|
20
|
-
end
|
21
|
-
|
22
|
-
# Gets the absolute path for a resource.
|
23
|
-
# if it is not listed in PATHS then the string is appended to
|
24
|
-
# WarningShot.root
|
25
|
-
#
|
26
|
-
# @param dir [Symbol]
|
27
|
-
# directory to look up
|
28
|
-
#
|
29
|
-
# @return [String]
|
30
|
-
# absolute path to resource
|
31
|
-
#
|
32
|
-
# @api public
|
33
|
-
def dir_for(dir)
|
34
|
-
dir = PATHS[dir.to_sym] || dir.to_s
|
35
|
-
WarningShot.root / dir
|
36
|
-
end
|
37
|
-
|
38
|
-
def platform
|
39
|
-
case ::Config::CONFIG['host_os']
|
40
|
-
when /darwin/i: :mac
|
41
|
-
when /mswin|windows/i: :windows
|
42
|
-
when /linux/i: :linux
|
43
|
-
when /sunos|solaris/i: :solaris
|
44
|
-
else
|
45
|
-
:unknown
|
46
|
-
end
|
47
|
-
end
|
48
|
-
|
49
|
-
# the application/framework warningshot is running in
|
50
|
-
# uses constants to determine
|
51
|
-
#
|
52
|
-
# @return [String] Name of framework/application
|
53
|
-
# @api public
|
54
|
-
def framework
|
55
|
-
if defined?(RAILS_ROOT)
|
56
|
-
return "RAILS"
|
57
|
-
elsif defined?(Merb)
|
58
|
-
return "MERB"
|
59
|
-
else
|
60
|
-
return "CONSOLE"
|
61
|
-
end
|
62
|
-
end
|
63
|
-
|
64
|
-
# shortcut to current environment
|
65
|
-
#
|
66
|
-
# @return [String] name of the environment
|
67
|
-
# @api public
|
68
|
-
def environment
|
69
|
-
WarningShot::Config.configuration[:environment]
|
70
|
-
end
|
71
|
-
|
72
|
-
# Parser used to parse Config hash
|
73
|
-
#
|
74
|
-
# @api private
|
75
|
-
def parser
|
76
|
-
@opt_parser ||= OptionParser.new
|
77
|
-
end
|
78
|
-
|
79
|
-
# register a callback to be run before starting
|
80
|
-
# the dependency resolver
|
81
|
-
# @param block [Proc]
|
82
|
-
# the before filter
|
83
|
-
# @api public
|
84
|
-
def before(&block)
|
85
|
-
BeforeCallbacks << block if block_given?
|
86
|
-
end
|
87
|
-
|
88
|
-
# register a callback to be run after starting
|
89
|
-
# the dependency resolver
|
90
|
-
# @param block [Proc]
|
91
|
-
# the after filter
|
92
|
-
# @api public
|
93
|
-
def after(&block)
|
94
|
-
AfterCallbacks << block if block_given?
|
95
|
-
end
|
96
|
-
|
97
|
-
# creates and runs a new dependency resolver
|
98
|
-
#
|
99
|
-
# @return WarningShot::DependencyResolver
|
100
|
-
# a processed dependency resolver
|
101
|
-
#
|
102
|
-
# @api public
|
103
|
-
def fire!
|
104
|
-
WarningShot.load_app
|
105
|
-
WarningShot.load_addl_resolvers
|
106
|
-
ws_dr = DependencyResolver.new WarningShot::Config.configuration
|
107
|
-
BeforeCallbacks.each {|p| p.call }
|
108
|
-
ws_dr.run
|
109
|
-
AfterCallbacks.each {|p| p.call }
|
110
|
-
|
111
|
-
ws_dr
|
112
|
-
end
|
113
|
-
alias :run :fire!
|
114
|
-
|
115
|
-
# Changes the working directory to that of the application
|
116
|
-
# Default application is '.'
|
117
|
-
def load_app
|
118
|
-
Dir.chdir(WarningShot::Config[:application])
|
119
|
-
end
|
120
|
-
|
121
|
-
# Loads any additional resolvers specified by --resolvers= or WarningShot::Config[:resolvers]
|
122
|
-
# defaults to ~/.warningshot/*.rb
|
123
|
-
def load_addl_resolvers
|
124
|
-
WarningShot::Config[:resolvers].each do |resolver_path|
|
125
|
-
Dir[File.expand_path(resolver_path)].each {|r| load r}
|
126
|
-
end
|
127
|
-
end
|
128
|
-
|
129
|
-
end
|
130
|
-
end
|
data/test/spec/spec.opts.zoiks
DELETED
File without changes
|
@@ -1,35 +0,0 @@
|
|
1
|
-
describe WarningShot::Config do
|
2
|
-
|
3
|
-
it 'should provide access to configuration' do
|
4
|
-
WarningShot::Config.respond_to? :configuration
|
5
|
-
end
|
6
|
-
|
7
|
-
it 'should be able to parse an ARGV string' do
|
8
|
-
args = ['--no-verbose','--resolve','--environment=rspec_test','-g','-aRspecTest']
|
9
|
-
WarningShot::Config.parse_args(args)
|
10
|
-
WarningShot::Config.configuration[:verbose].should be(false)
|
11
|
-
WarningShot::Config.configuration[:resolve].should be(true)
|
12
|
-
WarningShot::Config.configuration[:environment].should == 'rspec_test'
|
13
|
-
WarningShot::Config.configuration[:growl].should be(true)
|
14
|
-
WarningShot::Config.configuration[:application].should == 'RspecTest'
|
15
|
-
end
|
16
|
-
|
17
|
-
it 'should provide defaults' do
|
18
|
-
WarningShot::Config.defaults.class.should be(Hash)
|
19
|
-
end
|
20
|
-
|
21
|
-
it 'should allow access like a hash' do
|
22
|
-
WarningShot::Config.respond_to?(:[]).should be(true)
|
23
|
-
WarningShot::Config.respond_to?(:[]=).should be(true)
|
24
|
-
end
|
25
|
-
|
26
|
-
it 'should allow configurations to be changed with a block' do
|
27
|
-
WarningShot::Config.use do|c|
|
28
|
-
c[:growl] = true
|
29
|
-
c[:resolve]= true
|
30
|
-
end
|
31
|
-
|
32
|
-
WarningShot::Config[:growl].should be(true)
|
33
|
-
WarningShot::Config[:resolve].should be(true)
|
34
|
-
end
|
35
|
-
end
|