cucumber-notify 0.0.1 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,7 +1,6 @@
1
1
  == The MIT License
2
2
 
3
- * Code: Copyright (c) Matt Buck, 2008 - 2012
4
- * Gem: Copyright (c) Pavel Argentov, 2012
3
+ Copyright (c) Pavel Argentov, 2012
5
4
 
6
5
  Permission is hereby granted, free of charge, to any person obtaining
7
6
  a copy of this software and associated documentation files (the
data/README.md CHANGED
@@ -1,68 +1,5 @@
1
- # Cucumber notifier for autotest
1
+ # DEPRECATED!
2
2
 
3
- This gem's homepage is currently at
4
- <https://github.com/argent-smith/autotest-cucumber-notification/tree/gem>
3
+ This is now a meta-gem which is only delegating all functionality to ['autotest-cucumber-notification'][1] gem/module.
5
4
 
6
- The original code and documentation used in this gem can be found at <https://github.com/techpeace/autotest-cucumber-notification>
7
-
8
- This is a module for autotest that will provide notification for the results of your Cucumber features.
9
-
10
- ## Requirements
11
-
12
- 1. Autotest (ZenTest) configured to run your Cucumber features
13
- 2. libnotify -- This module only works on linux with the libnotify package right now. I'll work on adding support for other notification frameworks in the future
14
-
15
- ## Using the gem
16
-
17
- 1. Install the gem:
18
-
19
- ```shell
20
- $ gem install cucumber-notify
21
- ```
22
- 2. Edit your `.autotest` to include the module. If you downloaded it to your home folder, do something like this:
23
-
24
- ```ruby
25
- require 'rubygems'
26
- require 'cucumber-notify'
27
- ```
28
-
29
- 3. That's it. Just run Autotest with your Cucumber features like normal.
30
-
31
- ## Credits
32
-
33
- The original code this gem is based upon is compiled by [Matt Buck](https://github.com/techpeace).
34
-
35
- This is largely based on the work done by [carlosbrando](https://github.com/carlosbrando), and his work on
36
- [the autotest-notification gem](https://github.com/carlosbrando/autotest-notification/tree/master),
37
- many thanks to him.
38
-
39
- The cool icons came from the [Buuf icon set](http://mattahan.deviantart.com/art/Buuf-37966044)
40
- by [Paul Davey](http://mattahan.deviantart.com/).
41
-
42
- ## License
43
-
44
- ```
45
- The MIT License
46
-
47
- * Code: Copyright (c) Matt Buck, 2008 - 2012
48
- * Gem: Copyright (c) Pavel Argentov, 2012
49
-
50
- Permission is hereby granted, free of charge, to any person obtaining
51
- a copy of this software and associated documentation files (the
52
- 'Software'), to deal in the Software without restriction, including
53
- without limitation the rights to use, copy, modify, merge, publish,
54
- distribute, sublicense, and/or sell copies of the Software, and to
55
- permit persons to whom the Software is furnished to do so, subject to
56
- the following conditions:
57
-
58
- The above copyright notice and this permission notice shall be
59
- included in all copies or substantial portions of the Software.
60
-
61
- THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
62
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
63
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
64
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
65
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
66
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
67
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
68
- ```
5
+ [1]: https://rubygems.org/gems/autotest-cucumber-notification
@@ -1,40 +1,6 @@
1
- = Cucumber notifier for autotest
1
+ = DEPRECATED!
2
2
 
3
- This gem's homepage is currently at
4
- https://github.com/argent-smith/autotest-cucumber-notification/tree/gem
3
+ This is now a meta-gem which is only delegating all functionality to
4
+ 'autotest-cucumber-notification'
5
+ (https://rubygems.org/gems/autotest-cucumber-notification) gem/module.
5
6
 
6
- The original code and documentation used in this gem can be found at https://github.com/techpeace/autotest-cucumber-notification
7
-
8
- This is a module for autotest that will provide notification for the results of your Cucumber features.
9
-
10
- == Requirements
11
-
12
- 1. Autotest (ZenTest) configured to run your Cucumber features
13
- 2. libnotify -- This module only works on linux with the libnotify package right now. I'll work on adding support for other notification frameworks in the future
14
-
15
- == Using the gem
16
-
17
- 1. Install the gem:
18
-
19
- $ gem install cucumber-notify
20
-
21
- 2. Edit your .autotest to include the module. If you downloaded it to your home folder, do something like this:
22
-
23
- require 'rubygems'
24
- require 'cucumber-notify'
25
-
26
- 3. That's it. Just run Autotest with your Cucumber features like normal.
27
-
28
- == Credits
29
-
30
- The original code this gem is based upon is compiled by Matt Buck,
31
- https://github.com/techpeace
32
-
33
- This is largely based on the work done by
34
- carlosbrando, https://github.com/carlosbrando, and his work on
35
- the autotest-notification gem,
36
- https://github.com/carlosbrando/autotest-notification/tree/master,
37
- many thanks to him.
38
-
39
- The cool icons came from the Buuf icon set, http://mattahan.deviantart.com/art/Buuf-37966044
40
- by Paul Davey http://mattahan.deviantart.com/ .
@@ -5,11 +5,11 @@ require "cucumber-notify/version"
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "cucumber-notify"
7
7
  s.version = CucumberNotify::VERSION
8
- s.authors = ["Pavel Argentov", "Matt Buck"]
9
- s.email = ["argentoff@gmail.com", "github@matthewbuck.com"]
8
+ s.authors = ["Pavel Argentov"]
9
+ s.email = ["argentoff@gmail.com"]
10
10
  s.homepage = "https://github.com/argent-smith/autotest-cucumber-notification/tree/gem"
11
- s.summary = %q{Gem port of Matt Buck's autotest-cucumber-notification module.}
12
- s.description = %q{This is a module for autotest that will provide notification for the results of your Cucumber features.}
11
+ s.summary = %q{DEPRECATED: use 'autotest-cucumber-notification' gem instead.}
12
+ s.description = %q{This is now a meta-gem which is only delegating all functionality to 'autotest-cucumber-notification' gem/module.}
13
13
 
14
14
  s.extra_rdoc_files = [
15
15
  "LICENSE.rdoc",
@@ -17,7 +17,7 @@ Gem::Specification.new do |s|
17
17
  ]
18
18
 
19
19
  s.rdoc_options = [
20
- '--title', 'Cucumber notifier for autotest',
20
+ '--title', 'DEPRECATED',
21
21
  '--main', 'README.rdoc'
22
22
  ]
23
23
 
@@ -27,7 +27,6 @@ Gem::Specification.new do |s|
27
27
  s.require_paths = ["lib"]
28
28
 
29
29
  # specify any dependencies here; for example:
30
- # s.add_development_dependency "rspec"
31
- s.add_runtime_dependency "cucumber"
32
- s.add_runtime_dependency "ZenTest"
30
+ s.add_development_dependency "gemcutter"
31
+ s.add_runtime_dependency "autotest-cucumber-notification"
33
32
  end
@@ -1,2 +1,2 @@
1
1
  require 'cucumber-notify/version'
2
- require 'cucumber-notify/cucumber-notify'
2
+ require 'autotest-cucumber-notification'
@@ -1,4 +1,4 @@
1
1
  module CucumberNotify
2
2
  # Current module version
3
- VERSION = "0.0.1"
3
+ VERSION = "0.0.3"
4
4
  end
metadata CHANGED
@@ -1,31 +1,30 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cucumber-notify
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
8
8
  - Pavel Argentov
9
- - Matt Buck
10
9
  autorequire:
11
10
  bindir: bin
12
11
  cert_chain: []
13
- date: 2012-01-20 00:00:00.000000000 Z
12
+ date: 2012-01-27 00:00:00.000000000 Z
14
13
  dependencies:
15
14
  - !ruby/object:Gem::Dependency
16
- name: cucumber
17
- requirement: &342121610 !ruby/object:Gem::Requirement
15
+ name: gemcutter
16
+ requirement: &342011050 !ruby/object:Gem::Requirement
18
17
  none: false
19
18
  requirements:
20
19
  - - ! '>='
21
20
  - !ruby/object:Gem::Version
22
21
  version: '0'
23
- type: :runtime
22
+ type: :development
24
23
  prerelease: false
25
- version_requirements: *342121610
24
+ version_requirements: *342011050
26
25
  - !ruby/object:Gem::Dependency
27
- name: ZenTest
28
- requirement: &342121000 !ruby/object:Gem::Requirement
26
+ name: autotest-cucumber-notification
27
+ requirement: &342010830 !ruby/object:Gem::Requirement
29
28
  none: false
30
29
  requirements:
31
30
  - - ! '>='
@@ -33,12 +32,11 @@ dependencies:
33
32
  version: '0'
34
33
  type: :runtime
35
34
  prerelease: false
36
- version_requirements: *342121000
37
- description: This is a module for autotest that will provide notification for the
38
- results of your Cucumber features.
35
+ version_requirements: *342010830
36
+ description: This is now a meta-gem which is only delegating all functionality to
37
+ 'autotest-cucumber-notification' gem/module.
39
38
  email:
40
39
  - argentoff@gmail.com
41
- - github@matthewbuck.com
42
40
  executables: []
43
41
  extensions: []
44
42
  extra_rdoc_files:
@@ -57,14 +55,13 @@ files:
57
55
  - images/pending.png
58
56
  - images/undefined.png
59
57
  - lib/cucumber-notify.rb
60
- - lib/cucumber-notify/cucumber-notify.rb
61
58
  - lib/cucumber-notify/version.rb
62
59
  homepage: https://github.com/argent-smith/autotest-cucumber-notification/tree/gem
63
60
  licenses: []
64
61
  post_install_message:
65
62
  rdoc_options:
66
63
  - --title
67
- - Cucumber notifier for autotest
64
+ - DEPRECATED
68
65
  - --main
69
66
  - README.rdoc
70
67
  require_paths:
@@ -86,6 +83,6 @@ rubyforge_project:
86
83
  rubygems_version: 1.8.15
87
84
  signing_key:
88
85
  specification_version: 3
89
- summary: Gem port of Matt Buck's autotest-cucumber-notification module.
86
+ summary: ! 'DEPRECATED: use ''autotest-cucumber-notification'' gem instead.'
90
87
  test_files: []
91
88
  has_rdoc:
@@ -1,94 +0,0 @@
1
- # Usage:: see README
2
- module CucumberNotify
3
-
4
- # Notifier configuration helpers and defaults.
5
- class Config
6
-
7
- class << self
8
- attr_reader :images_directory
9
- attr_accessor :success_image, :fail_image, :pending_image, :undefined_image, :expiration_in_seconds,
10
- :failure, :success, :pending, :undefined, :fade_timeout
11
-
12
- def images_directory=(path)
13
- @images_directory = File.expand_path(path)
14
- @success_image = "#{@images_directory}/pass.png"
15
- @fail_image = "#{@images_directory}/fail.png"
16
- @pending_image = "#{@images_directory}/pending.png"
17
- @undefined_image = "#{@images_directory}/undefined.png"
18
- end
19
- end
20
-
21
- self.images_directory = File.expand_path('../../images', File.dirname(__FILE__))
22
- self.fade_timeout = 5000
23
- self.failure = "Features Failure"
24
- self.success = "Features Success"
25
- self.pending = "Features Pending"
26
- self.undefined = "Features Undefined"
27
-
28
- end
29
-
30
- Autotest.add_hook :ran_features do |at|
31
- result = at.results.is_a?(String) ? at.results : at.results.to_s
32
-
33
- if result
34
- @scenarios = result[/(\d+) scenarios?/,1].to_i
35
- @steps = result[/(\d+) steps?/,1].to_i
36
- @scenario_stats = Hash.new
37
- @step_stats = Hash.new
38
-
39
- %w{ failed skipped passed pending undefined }.each do |x|
40
- @scenario_stats.merge!({ "#{x}" => result[/\d+ scenarios?.*?(\d+) #{x}.*\)/,1].to_i })
41
- @step_stats.merge!({ "#{x}" => result[/\d+ steps?.*?(\d+) #{x}.*\)/,1].to_i })
42
- end
43
-
44
- if @scenario_stats["failed"] > 0 || @step_stats["failed"] > 0
45
- notify Config.failure, assemble_msg(@scenarios,@steps,@scenario_stats,@step_stats), Config.fail_image
46
- elsif @scenario_stats["pending"] > 0 || @step_stats["pending"] > 0
47
- notify Config.pending, assemble_msg(@scenarios,@steps,@scenario_stats,@step_stats), Config.pending_image
48
- elsif @scenario_stats["undefined"] > 0 || @step_stats["undefined"] > 0
49
- notify Config.undefined, assemble_msg(@scenarios,@steps,@scenario_stats,@step_stats), Config.undefined_image
50
- elsif @scenario_stats["passed"] > 0 && @step_stats["passed"] > 0
51
- notify Config.success, assemble_msg(@scenarios,@steps,@scenario_stats,@step_stats), Config.success_image
52
- else
53
- notify Config.failure, "Errors Ecountered", Config.fail_image
54
- end
55
- end
56
- end
57
-
58
- class << self
59
-
60
- def notify(title, msg, img = Config.success_image)
61
- system "notify-send -i #{img} '#{title}' '#{msg}' -t #{Config.fade_timeout}"
62
- end
63
-
64
- def pluralize(text, number)
65
- "#{number} #{text}#{'s' if number != 1}"
66
- end
67
-
68
- def assemble_msg(scenarios, steps, scenario_stats = {}, step_stats = {})
69
- msg = ""
70
- if scenarios > 0
71
- msg += "#{pluralize('scenario',scenarios)}"
72
- msg += "\n#{stat_string(scenario_stats)}"
73
- msg += "\n\n" if steps > 0
74
- end
75
- if steps > 0
76
- msg += "#{pluralize('step',steps)}"
77
- msg += "\n#{stat_string(step_stats)}"
78
- end
79
- return msg
80
- end
81
-
82
- def stat_string(hash)
83
- stat_str = "("
84
- hash.each do |key,value|
85
- if value > 0
86
- stat_str += "#{value} #{key},"
87
- end
88
- end
89
- stat_str += ")"
90
- stat_str.gsub!(",\)",")")
91
- end
92
- end
93
-
94
- end