remarkable 4.0.0.alpha1 → 4.0.0.alpha2
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/README +25 -4
- data/lib/remarkable/core.rb +15 -0
- data/lib/remarkable/{base.rb → core/base.rb} +0 -0
- data/lib/remarkable/{core_ext → core/core_ext}/array.rb +0 -0
- data/lib/remarkable/{dsl.rb → core/dsl.rb} +3 -4
- data/lib/remarkable/{dsl → core/dsl}/assertions.rb +0 -0
- data/lib/remarkable/{dsl → core/dsl}/callbacks.rb +0 -0
- data/lib/remarkable/{dsl → core/dsl}/optionals.rb +0 -0
- data/lib/remarkable/{i18n.rb → core/i18n.rb} +0 -0
- data/lib/remarkable/{macros.rb → core/macros.rb} +0 -0
- data/lib/remarkable/{matchers.rb → core/matchers.rb} +0 -0
- data/lib/remarkable/{messages.rb → core/messages.rb} +0 -0
- data/lib/remarkable/{negative.rb → core/negative.rb} +0 -0
- data/lib/remarkable/{rspec.rb → core/rspec.rb} +0 -0
- data/lib/remarkable/core/version.rb +3 -0
- data/remarkable.gemspec +21 -21
- metadata +27 -20
- data/lib/remarkable.rb +0 -19
- data/lib/remarkable/version.rb +0 -3
data/README
CHANGED
@@ -4,6 +4,28 @@ This is the core package of Remarkable. It provides a DSL for creating matchers
|
|
4
4
|
with I18n support, decouples messages from matchers logic, add rspec extra features,
|
5
5
|
create macros automatically and allow those macros to be configurable wth blocks.
|
6
6
|
|
7
|
+
== Installation
|
8
|
+
|
9
|
+
sudo gem install remarkable --pre
|
10
|
+
|
11
|
+
Add this to your Gemfile:
|
12
|
+
|
13
|
+
group :test do
|
14
|
+
gem 'remarkable', '>=4.0.0.alpha2'
|
15
|
+
end
|
16
|
+
|
17
|
+
Drop this into your spec/spec_helper.rb or spec/support/remarkable.rb file:
|
18
|
+
|
19
|
+
require 'remarkable/core'
|
20
|
+
|
21
|
+
To include custom matchers:
|
22
|
+
|
23
|
+
Remarkable.include_matchers!(MyApp::MyCustomMatchers)
|
24
|
+
|
25
|
+
If you use Shoulda-style syntax, you will need to target Rspec::Core::ExampleGroup
|
26
|
+
|
27
|
+
Remarkable.include_matchers!(MyApp::MyCustomMatchers, Rspec::Core::ExampleGroup)
|
28
|
+
|
7
29
|
== Macros
|
8
30
|
|
9
31
|
Each matcher in Remarkable is also available as a macro. So this matcher:
|
@@ -44,7 +66,7 @@ And it will show in your specs output:
|
|
44
66
|
All matchers come with I18n support. You can find an example locale file under
|
45
67
|
the locale folder of each project.
|
46
68
|
|
47
|
-
To change the locale, you have first to add your locale file:
|
69
|
+
To change the locale, you have first to add your locale file in spec/support/remarkable.rb:
|
48
70
|
|
49
71
|
Remarkable.add_locale 'path/to/my_locale.yml'
|
50
72
|
|
@@ -53,10 +75,9 @@ And then:
|
|
53
75
|
Remarkable.locale = :my_locale
|
54
76
|
|
55
77
|
Internationalization is powered by the I18n gem. If you are using it with Rails,
|
56
|
-
it will use the
|
78
|
+
it will use the gem, otherwise you will have to install the gem by hand:
|
57
79
|
|
58
|
-
gem
|
59
|
-
sudo gem install svenfuchs-i18n
|
80
|
+
gem install i18n
|
60
81
|
|
61
82
|
== Creating you own matcher
|
62
83
|
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# Load core files
|
2
|
+
require 'remarkable/core/version'
|
3
|
+
require 'remarkable/core/matchers'
|
4
|
+
require 'remarkable/core/macros'
|
5
|
+
require 'remarkable/core/i18n'
|
6
|
+
require 'remarkable/core/dsl'
|
7
|
+
require 'remarkable/core/messages'
|
8
|
+
require 'remarkable/core/base'
|
9
|
+
require 'remarkable/core/negative'
|
10
|
+
require 'remarkable/core/core_ext/array'
|
11
|
+
require 'remarkable/core/rspec'
|
12
|
+
|
13
|
+
# Add default locale
|
14
|
+
dir = File.dirname(__FILE__)
|
15
|
+
Dir["#{dir}/../../locale/*yml"].each {|f| Remarkable.add_locale(f) }
|
File without changes
|
File without changes
|
@@ -1,7 +1,6 @@
|
|
1
|
-
|
2
|
-
require
|
3
|
-
require
|
4
|
-
require File.join(dir, 'dsl', 'callbacks')
|
1
|
+
require 'remarkable/core/dsl/assertions'
|
2
|
+
require 'remarkable/core/dsl/optionals'
|
3
|
+
require 'remarkable/core/dsl/callbacks'
|
5
4
|
|
6
5
|
module Remarkable
|
7
6
|
# The DSL module is responsable for all Remarkable convenience methods.
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
data/remarkable.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{remarkable}
|
8
|
-
s.version = "4.0.0.
|
8
|
+
s.version = "4.0.0.alpha2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ho-Sheng Hsiao", "Carlos Brando", "Jos\303\251 Valim"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-05-26}
|
13
13
|
s.description = %q{Remarkable: a framework for rspec matchers and macros, with support for I18n.}
|
14
14
|
s.email = ["hosh@sparkfly.com", "eduardobrando@gmail.com", "jose.valim@gmail.com"]
|
15
15
|
s.extra_rdoc_files = [
|
@@ -21,20 +21,20 @@ Gem::Specification.new do |s|
|
|
21
21
|
"CHANGELOG",
|
22
22
|
"LICENSE",
|
23
23
|
"README",
|
24
|
-
"lib/remarkable.rb",
|
25
|
-
"lib/remarkable/base.rb",
|
26
|
-
"lib/remarkable/core_ext/array.rb",
|
27
|
-
"lib/remarkable/dsl.rb",
|
28
|
-
"lib/remarkable/dsl/assertions.rb",
|
29
|
-
"lib/remarkable/dsl/callbacks.rb",
|
30
|
-
"lib/remarkable/dsl/optionals.rb",
|
31
|
-
"lib/remarkable/i18n.rb",
|
32
|
-
"lib/remarkable/macros.rb",
|
33
|
-
"lib/remarkable/matchers.rb",
|
34
|
-
"lib/remarkable/messages.rb",
|
35
|
-
"lib/remarkable/negative.rb",
|
36
|
-
"lib/remarkable/rspec.rb",
|
37
|
-
"lib/remarkable/version.rb",
|
24
|
+
"lib/remarkable/core.rb",
|
25
|
+
"lib/remarkable/core/base.rb",
|
26
|
+
"lib/remarkable/core/core_ext/array.rb",
|
27
|
+
"lib/remarkable/core/dsl.rb",
|
28
|
+
"lib/remarkable/core/dsl/assertions.rb",
|
29
|
+
"lib/remarkable/core/dsl/callbacks.rb",
|
30
|
+
"lib/remarkable/core/dsl/optionals.rb",
|
31
|
+
"lib/remarkable/core/i18n.rb",
|
32
|
+
"lib/remarkable/core/macros.rb",
|
33
|
+
"lib/remarkable/core/matchers.rb",
|
34
|
+
"lib/remarkable/core/messages.rb",
|
35
|
+
"lib/remarkable/core/negative.rb",
|
36
|
+
"lib/remarkable/core/rspec.rb",
|
37
|
+
"lib/remarkable/core/version.rb",
|
38
38
|
"locale/en.yml",
|
39
39
|
"remarkable.gemspec"
|
40
40
|
]
|
@@ -42,20 +42,20 @@ Gem::Specification.new do |s|
|
|
42
42
|
s.rdoc_options = ["--charset=UTF-8"]
|
43
43
|
s.require_paths = ["lib"]
|
44
44
|
s.rubyforge_project = %q{remarkable}
|
45
|
-
s.rubygems_version = %q{1.3.
|
45
|
+
s.rubygems_version = %q{1.3.7}
|
46
46
|
s.summary = %q{Remarkable: a framework for rspec matchers and macros, with support for I18n.}
|
47
47
|
|
48
48
|
if s.respond_to? :specification_version then
|
49
49
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
50
50
|
s.specification_version = 3
|
51
51
|
|
52
|
-
if Gem::Version.new(Gem::
|
53
|
-
s.add_runtime_dependency(%q<rspec>, [">= 2.0.0.
|
52
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
53
|
+
s.add_runtime_dependency(%q<rspec>, [">= 2.0.0.alpha8"])
|
54
54
|
else
|
55
|
-
s.add_dependency(%q<rspec>, [">= 2.0.0.
|
55
|
+
s.add_dependency(%q<rspec>, [">= 2.0.0.alpha8"])
|
56
56
|
end
|
57
57
|
else
|
58
|
-
s.add_dependency(%q<rspec>, [">= 2.0.0.
|
58
|
+
s.add_dependency(%q<rspec>, [">= 2.0.0.alpha8"])
|
59
59
|
end
|
60
60
|
end
|
61
61
|
|
metadata
CHANGED
@@ -1,13 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: remarkable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: -1710980496
|
4
5
|
prerelease: true
|
5
6
|
segments:
|
6
7
|
- 4
|
7
8
|
- 0
|
8
9
|
- 0
|
9
|
-
-
|
10
|
-
version: 4.0.0.
|
10
|
+
- alpha2
|
11
|
+
version: 4.0.0.alpha2
|
11
12
|
platform: ruby
|
12
13
|
authors:
|
13
14
|
- Ho-Sheng Hsiao
|
@@ -17,22 +18,24 @@ autorequire:
|
|
17
18
|
bindir: bin
|
18
19
|
cert_chain: []
|
19
20
|
|
20
|
-
date: 2010-
|
21
|
+
date: 2010-05-26 00:00:00 -04:00
|
21
22
|
default_executable:
|
22
23
|
dependencies:
|
23
24
|
- !ruby/object:Gem::Dependency
|
24
25
|
name: rspec
|
25
26
|
prerelease: false
|
26
27
|
requirement: &id001 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
27
29
|
requirements:
|
28
30
|
- - ">="
|
29
31
|
- !ruby/object:Gem::Version
|
32
|
+
hash: -1710980374
|
30
33
|
segments:
|
31
34
|
- 2
|
32
35
|
- 0
|
33
36
|
- 0
|
34
|
-
-
|
35
|
-
version: 2.0.0.
|
37
|
+
- alpha8
|
38
|
+
version: 2.0.0.alpha8
|
36
39
|
type: :runtime
|
37
40
|
version_requirements: *id001
|
38
41
|
description: "Remarkable: a framework for rspec matchers and macros, with support for I18n."
|
@@ -52,20 +55,20 @@ files:
|
|
52
55
|
- CHANGELOG
|
53
56
|
- LICENSE
|
54
57
|
- README
|
55
|
-
- lib/remarkable.rb
|
56
|
-
- lib/remarkable/base.rb
|
57
|
-
- lib/remarkable/core_ext/array.rb
|
58
|
-
- lib/remarkable/dsl.rb
|
59
|
-
- lib/remarkable/dsl/assertions.rb
|
60
|
-
- lib/remarkable/dsl/callbacks.rb
|
61
|
-
- lib/remarkable/dsl/optionals.rb
|
62
|
-
- lib/remarkable/i18n.rb
|
63
|
-
- lib/remarkable/macros.rb
|
64
|
-
- lib/remarkable/matchers.rb
|
65
|
-
- lib/remarkable/messages.rb
|
66
|
-
- lib/remarkable/negative.rb
|
67
|
-
- lib/remarkable/rspec.rb
|
68
|
-
- lib/remarkable/version.rb
|
58
|
+
- lib/remarkable/core.rb
|
59
|
+
- lib/remarkable/core/base.rb
|
60
|
+
- lib/remarkable/core/core_ext/array.rb
|
61
|
+
- lib/remarkable/core/dsl.rb
|
62
|
+
- lib/remarkable/core/dsl/assertions.rb
|
63
|
+
- lib/remarkable/core/dsl/callbacks.rb
|
64
|
+
- lib/remarkable/core/dsl/optionals.rb
|
65
|
+
- lib/remarkable/core/i18n.rb
|
66
|
+
- lib/remarkable/core/macros.rb
|
67
|
+
- lib/remarkable/core/matchers.rb
|
68
|
+
- lib/remarkable/core/messages.rb
|
69
|
+
- lib/remarkable/core/negative.rb
|
70
|
+
- lib/remarkable/core/rspec.rb
|
71
|
+
- lib/remarkable/core/version.rb
|
69
72
|
- locale/en.yml
|
70
73
|
- remarkable.gemspec
|
71
74
|
has_rdoc: true
|
@@ -78,16 +81,20 @@ rdoc_options:
|
|
78
81
|
require_paths:
|
79
82
|
- lib
|
80
83
|
required_ruby_version: !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
81
85
|
requirements:
|
82
86
|
- - ">="
|
83
87
|
- !ruby/object:Gem::Version
|
88
|
+
hash: 3
|
84
89
|
segments:
|
85
90
|
- 0
|
86
91
|
version: "0"
|
87
92
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
93
|
+
none: false
|
88
94
|
requirements:
|
89
95
|
- - ">"
|
90
96
|
- !ruby/object:Gem::Version
|
97
|
+
hash: 25
|
91
98
|
segments:
|
92
99
|
- 1
|
93
100
|
- 3
|
@@ -96,7 +103,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
96
103
|
requirements: []
|
97
104
|
|
98
105
|
rubyforge_project: remarkable
|
99
|
-
rubygems_version: 1.3.
|
106
|
+
rubygems_version: 1.3.7
|
100
107
|
signing_key:
|
101
108
|
specification_version: 3
|
102
109
|
summary: "Remarkable: a framework for rspec matchers and macros, with support for I18n."
|
data/lib/remarkable.rb
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
# Load core files
|
2
|
-
dir = File.dirname(__FILE__)
|
3
|
-
require File.join(dir, 'remarkable', 'version')
|
4
|
-
require File.join(dir, 'remarkable', 'matchers')
|
5
|
-
require File.join(dir, 'remarkable', 'i18n')
|
6
|
-
require File.join(dir, 'remarkable', 'dsl')
|
7
|
-
require File.join(dir, 'remarkable', 'messages')
|
8
|
-
|
9
|
-
require File.join(dir, 'remarkable', 'base')
|
10
|
-
require File.join(dir, 'remarkable', 'macros')
|
11
|
-
#require File.join(dir, 'remarkable', 'pending')
|
12
|
-
require File.join(dir, 'remarkable', 'negative')
|
13
|
-
require File.join(dir, 'remarkable', 'core_ext', 'array')
|
14
|
-
|
15
|
-
if defined?(Rspec)
|
16
|
-
require File.join(dir, 'remarkable', 'rspec')
|
17
|
-
end
|
18
|
-
|
19
|
-
Remarkable.add_locale File.join(dir, '..', 'locale', 'en.yml')
|
data/lib/remarkable/version.rb
DELETED