step_definitions_viewer 0.0.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.
data/.gitignore ADDED
@@ -0,0 +1,3 @@
1
+ pkg/*
2
+ *.gem
3
+ .bundle
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in step_definitions_viewer.gemspec
4
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,28 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ step_definitions_viewer (0.0.1)
5
+ terminal-display-colors (~> 0.0.2)
6
+ thor (= 0.14.6)
7
+
8
+ GEM
9
+ remote: http://rubygems.org/
10
+ specs:
11
+ diff-lcs (1.1.2)
12
+ rspec (2.4.0)
13
+ rspec-core (~> 2.4.0)
14
+ rspec-expectations (~> 2.4.0)
15
+ rspec-mocks (~> 2.4.0)
16
+ rspec-core (2.4.0)
17
+ rspec-expectations (2.4.0)
18
+ diff-lcs (~> 1.1.2)
19
+ rspec-mocks (2.4.0)
20
+ terminal-display-colors (0.0.2)
21
+ thor (0.14.6)
22
+
23
+ PLATFORMS
24
+ ruby
25
+
26
+ DEPENDENCIES
27
+ rspec (~> 2.4.0)
28
+ step_definitions_viewer!
data/Rakefile ADDED
@@ -0,0 +1,2 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
data/bin/steps ADDED
@@ -0,0 +1,11 @@
1
+ #!/usr/bin/env ruby
2
+ $LOAD_PATH.push File.join(File.dirname(__FILE__),".." ,"lib" )
3
+ require 'step_definitions_viewer'
4
+ require "thor"
5
+ class Steps < Thor
6
+ desc "view FILENAME", "shows steps from a step definition file"
7
+ def view(filename)
8
+ StepDefinitionsViewer::Parser.output(filename)
9
+ end
10
+ end
11
+ Steps.start
@@ -0,0 +1,40 @@
1
+ require 'rubygems'
2
+ require 'terminal-display-colors'
3
+
4
+ module StepDefinitionsViewer
5
+ class Parser
6
+ def self.parse(filename)
7
+ contents = IO.read(filename)
8
+ scanned_contents = contents.scan(/(Given|When|Then) \/\^(.*)\$\//)
9
+ result = {"Given" => [], "When" => [], "Then" => []}
10
+
11
+ scanned_contents.each do |step|
12
+ result.keys.each do |state|
13
+ if step[0] == state
14
+ result[state] << step[1]
15
+ end
16
+ end
17
+ end
18
+
19
+ result
20
+ end
21
+
22
+ def self.output(filename)
23
+ result = parse(filename)
24
+ puts "Given".red
25
+ result["Given"].each do |step|
26
+ puts " #{step}"
27
+ end
28
+ puts
29
+ puts "When".green
30
+ result["When"].each do |step|
31
+ puts " #{step}"
32
+ end
33
+ puts
34
+ puts "Then".blue
35
+ result["Then"].each do |step|
36
+ puts " #{step}"
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,3 @@
1
+ module StepDefinitionsViewer
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,24 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require "step_definitions_viewer/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "step_definitions_viewer"
7
+ s.version = StepDefinitionsViewer::VERSION
8
+ s.platform = Gem::Platform::RUBY
9
+ s.authors = ["Rizwan Reza"]
10
+ s.email = ["rizwanreza@gmail.com"]
11
+ s.homepage = "http://github.com/rizwanreza/step_definitions_viewer"
12
+ s.summary = %q{Shows step definitions nicely for rapid cuking.}
13
+
14
+ s.rubyforge_project = "step_definitions_viewer"
15
+
16
+ s.add_dependency('thor', '0.14.6')
17
+ s.add_dependency('terminal-display-colors', '~> 0.0.2')
18
+ s.add_development_dependency('rspec', '~> 2.4.0')
19
+
20
+ s.files = `git ls-files`.split("\n")
21
+ s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
22
+ s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
23
+ s.require_paths = ["lib"]
24
+ end
metadata ADDED
@@ -0,0 +1,122 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: step_definitions_viewer
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Rizwan Reza
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-01-19 00:00:00 +03:30
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
22
+ name: thor
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - "="
28
+ - !ruby/object:Gem::Version
29
+ hash: 43
30
+ segments:
31
+ - 0
32
+ - 14
33
+ - 6
34
+ version: 0.14.6
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
38
+ name: terminal-display-colors
39
+ prerelease: false
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ hash: 27
46
+ segments:
47
+ - 0
48
+ - 0
49
+ - 2
50
+ version: 0.0.2
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: rspec
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ hash: 31
62
+ segments:
63
+ - 2
64
+ - 4
65
+ - 0
66
+ version: 2.4.0
67
+ type: :development
68
+ version_requirements: *id003
69
+ description:
70
+ email:
71
+ - rizwanreza@gmail.com
72
+ executables:
73
+ - steps
74
+ extensions: []
75
+
76
+ extra_rdoc_files: []
77
+
78
+ files:
79
+ - .gitignore
80
+ - Gemfile
81
+ - Gemfile.lock
82
+ - Rakefile
83
+ - bin/steps
84
+ - lib/step_definitions_viewer.rb
85
+ - lib/step_definitions_viewer/version.rb
86
+ - step_definitions_viewer.gemspec
87
+ has_rdoc: true
88
+ homepage: http://github.com/rizwanreza/step_definitions_viewer
89
+ licenses: []
90
+
91
+ post_install_message:
92
+ rdoc_options: []
93
+
94
+ require_paths:
95
+ - lib
96
+ required_ruby_version: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ">="
100
+ - !ruby/object:Gem::Version
101
+ hash: 3
102
+ segments:
103
+ - 0
104
+ version: "0"
105
+ required_rubygems_version: !ruby/object:Gem::Requirement
106
+ none: false
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ hash: 3
111
+ segments:
112
+ - 0
113
+ version: "0"
114
+ requirements: []
115
+
116
+ rubyforge_project: step_definitions_viewer
117
+ rubygems_version: 1.3.7
118
+ signing_key:
119
+ specification_version: 3
120
+ summary: Shows step definitions nicely for rapid cuking.
121
+ test_files: []
122
+