lime 0.2.0 → 0.3.0
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/.ruby +22 -16
- data/HISTORY.md +13 -0
- data/LICENSE.txt +4 -2
- data/README.md +50 -8
- data/lib/lime.rb +20 -2
- data/lib/lime/feature.rb +26 -79
- data/lib/lime/featurette.rb +68 -0
- data/lib/lime/scenario.rb +10 -5
- metadata +31 -54
- data/.gemspec +0 -152
- data/.gitignore +0 -7
- data/Assembly +0 -46
- data/COPYING.rdoc +0 -59
- data/MANIFEST +0 -14
- data/PROFILE +0 -30
- data/VERSION +0 -1
- data/site/assets/images/cut-lime.png +0 -0
- data/site/assets/images/forkme.png +0 -0
- data/site/assets/images/github-logo.png +0 -0
- data/site/assets/images/lemon.jpg +0 -0
- data/site/assets/images/lemon.svg +0 -39
- data/site/assets/images/limes-are-good.png +0 -0
- data/site/assets/images/opensource.png +0 -0
- data/site/assets/images/ruby-logo.png +0 -0
- data/site/assets/images/skin.jpg +0 -0
- data/site/assets/images/skin1.jpg +0 -0
- data/site/assets/images/tap.png +0 -0
- data/site/assets/images/title.png +0 -0
- data/site/assets/styles/reset.css +0 -17
- data/site/assets/styles/site.css +0 -47
- data/site/index.html +0 -157
- data/try/.testrb +0 -3
- data/try/calculator.rb +0 -15
- data/try/feature_example.rb +0 -40
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.2.0
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -1,39 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
-
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
3
|
-
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
4
|
-
<svg id="svg1" sodipodi:version="0.32" inkscape:version="0.38.1" width="400.00000pt" height="400.00000pt" sodipodi:docbase="/var/www/html/svg_gallery/svg/fruits" sodipodi:docname="lemon.svg" xmlns="http://www.w3.org/2000/svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink">
|
5
|
-
<defs id="defs3">
|
6
|
-
<linearGradient id="linearGradient831">
|
7
|
-
<stop style="stop-color: rgb(255, 255, 0); stop-opacity: 1;" offset="0.0000000" id="stop832"/>
|
8
|
-
<stop style="stop-color: rgb(255, 227, 0); stop-opacity: 1;" offset="1.0000000" id="stop833"/>
|
9
|
-
</linearGradient>
|
10
|
-
<radialGradient xlink:href="#linearGradient831" id="radialGradient834" cx="0.33703703" cy="0.28358209" r="0.38183698" fx="0.33703703" fy="0.28358209"/>
|
11
|
-
</defs>
|
12
|
-
<sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="1.3195079" inkscape:cx="120.13018" inkscape:cy="204.09312" inkscape:window-width="910" inkscape:window-height="775" inkscape:window-x="119" inkscape:window-y="24"/>
|
13
|
-
<g id="g838">
|
14
|
-
<path style="fill: url(#radialGradient834) rgb(0, 0, 0); fill-rule: evenodd; stroke: rgb(0, 0, 0); stroke-width: 10; stroke-linejoin: round; stroke-dasharray: none;" d="M 68.708186,148.12939 C 228.69852,9.5810597 474.45687,146.15839 471.15810,289.65487 C 497.54826,315.22034 467.85933,343.25988 451.36548,350.68211 C 309.51838,525.51691 17.577254,382.02043 34.895796,237.69925 C 12.847026,174.32754 32.421718,155.55162 68.708186,148.12939 z " id="path827" sodipodi:nodetypes="ccccc"/>
|
15
|
-
<path style="fill-opacity: 0.133333; fill-rule: evenodd; stroke-width: 1pt;" d="M 44.330330,267.99099 C 65.580330,246.74099 68.080330,411.74099 378.08033,350.49099 C 371.83033,344.24099 338.08033,201.74099 458.08033,249.24099 C 504.95533,263.61599 358.70533,239.55349 410.58033,339.24099 C 418.62433,352.33698 416.20533,352.36599 438.08033,357.99099 C 305.58033,500.49099 46.830330,390.49099 44.330330,267.99099 z " id="path828" sodipodi:nodetypes="cccccc"/>
|
16
|
-
<path style="fill: rgb(255, 255, 255); fill-opacity: 0.7; fill-rule: evenodd; stroke-width: 1pt;" d="M 68.080330,155.83295 C 124.36962,90.490990 313.68568,43.977604 438.08033,203.33295 C 395.58033,249.58295 275.58033,49.582958 68.080330,155.83295 z " id="path829" sodipodi:nodetypes="ccc"/>
|
17
|
-
<path style="fill: rgb(255, 255, 255); fill-opacity: 0.7; fill-rule: evenodd; stroke-width: 1pt;" d="M 469.33033,295.49099 C 483.64639,312.99099 470.58033,332.99099 460.58033,330.49099 C 381.83033,309.24099 424.33033,287.99099 469.33033,295.49099 z " id="path830" sodipodi:nodetypes="ccc"/>
|
18
|
-
</g>
|
19
|
-
|
20
|
-
<rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
21
|
-
<Work rdf:about="">
|
22
|
-
<dc:title>Clipart by Nicu Buculei - pear</dc:title>
|
23
|
-
<dc:rights>
|
24
|
-
<Agent>
|
25
|
-
<dc:title>Nicu Buculei</dc:title>
|
26
|
-
</Agent>
|
27
|
-
</dc:rights>
|
28
|
-
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
|
29
|
-
<license rdf:resource="http://web.resource.org/cc/PublicDomain"/>
|
30
|
-
</Work>
|
31
|
-
|
32
|
-
<License rdf:about="http://web.resource.org/cc/PublicDomain">
|
33
|
-
<permits rdf:resource="http://web.resource.org/cc/Reproduction"/>
|
34
|
-
<permits rdf:resource="http://web.resource.org/cc/Distribution"/>
|
35
|
-
<permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/>
|
36
|
-
</License>
|
37
|
-
|
38
|
-
</rdf:RDF>
|
39
|
-
</svg>
|
Binary file
|
Binary file
|
Binary file
|
data/site/assets/images/skin.jpg
DELETED
Binary file
|
Binary file
|
data/site/assets/images/tap.png
DELETED
Binary file
|
Binary file
|
@@ -1,17 +0,0 @@
|
|
1
|
-
html { font-family: sans-serif; font-size: 16px; color: black; }
|
2
|
-
body { padding: 0; margin: 0; font-family: sans-serif; font-size: 12px; background: #fff; }
|
3
|
-
|
4
|
-
h1 { font-size: 90px; margin: 20px; }
|
5
|
-
|
6
|
-
p { font-size: 110%; text-align: justify; margin: 20px 0; line-height: 150%; }
|
7
|
-
|
8
|
-
a { text-decoration: none; font-size: 100%; }
|
9
|
-
a:hover { text-decoration: underline; }
|
10
|
-
|
11
|
-
ul { margin: 0 auto; list-style-type: none; width: 300px; }
|
12
|
-
li { float: left; padding: 10px; text-align: center; }
|
13
|
-
|
14
|
-
pre { font-size: 130%; padding: 10px 0 0 0; -moz-border-radius: 10px; font-family: courier, monospace; color: #000; }
|
15
|
-
code { font-family: courier, monospace; }
|
16
|
-
|
17
|
-
img { border: none; }
|
data/site/assets/styles/site.css
DELETED
@@ -1,47 +0,0 @@
|
|
1
|
-
html { font-size: 16px; }
|
2
|
-
|
3
|
-
h1 { font-family: times; font-size: 400%; margin: 20px 0; color: #f7d901; }
|
4
|
-
h2 { font-size: 220%; margin-top: 30px; color: #444; }
|
5
|
-
h3 { font-size: 190%; color: green; }
|
6
|
-
|
7
|
-
p { color: #222; font-weight: normal; font-size: 110%; }
|
8
|
-
a { color: #262; }
|
9
|
-
a:hover { text-decoration: underline; }
|
10
|
-
|
11
|
-
pre { background: #ffffff; -moz-border-radius: 10px; line-height: 140%; font-size: 0.9em; }}
|
12
|
-
code { color: #222; font-weight: bold; }
|
13
|
-
tt { color: #222; font-weight: bold; }
|
14
|
-
|
15
|
-
#nav { padding: 0 30px 20px 60px; text-align: left; color: pink; float: right; }
|
16
|
-
#nav a { font-size: 160%; font-weight: bold; line-height: 150%; color: #000; }
|
17
|
-
#nav a:hover { color: #FFF; text-decoration: none; }
|
18
|
-
|
19
|
-
#header { height: 250px; text-align: left; }
|
20
|
-
#header h1 { font-size: 100px; padding: 40px 0 0 0; color: #f7d901; margin-left: -10px; }
|
21
|
-
#header h2 { padding-left: 5px; margin-top: 0; }
|
22
|
-
|
23
|
-
#main { color: white; padding: 20px 0 30px 0; background: url(../images/skin.jpg) #f7e931; }
|
24
|
-
#main p { font-weight: bold; font-family: sans-serif; font-size: 1.7em; color: #222; font-weight: bold; text-shadow: 1px 1px white; }
|
25
|
-
#main h2 { color: #333333; }
|
26
|
-
#main h3 { color: #333333; }
|
27
|
-
|
28
|
-
#example p { font-size: 2em; }
|
29
|
-
|
30
|
-
#footer { margin-top: 40px; padding: 40px 0; text-align: center; background: url(../images/skin.jpg) #f7e931; }
|
31
|
-
#footer .copyright { padding-top: 0; }
|
32
|
-
#footer .copyright p { color: #222; font-weight: normal; font-size: 80%; line-height: 150%; }
|
33
|
-
|
34
|
-
#forkme {
|
35
|
-
position: absolute;
|
36
|
-
top: 0; right: 0;
|
37
|
-
width: 150px;
|
38
|
-
}
|
39
|
-
|
40
|
-
.page { width: 730px; margin: 0 auto; }
|
41
|
-
|
42
|
-
.bordered { border-top: 2px solid #99ff99; border-bottom: 2px solid #99ff99; }
|
43
|
-
|
44
|
-
.copyright { padding: 0; text-align: left; }
|
45
|
-
.copyright td { font-size: 10px; color: #444; }
|
46
|
-
|
47
|
-
|
data/site/index.html
DELETED
@@ -1,157 +0,0 @@
|
|
1
|
-
<html>
|
2
|
-
<head>
|
3
|
-
<title>Lime</title>
|
4
|
-
<link href="assets/styles/reset.css" rel="stylesheet" type="text/css"/>
|
5
|
-
<link href="assets/styles/site.css" rel="stylesheet" type="text/css"/>
|
6
|
-
<link href="assets/images/lime.jpg" rel="shortcut icon"/>
|
7
|
-
|
8
|
-
<!-- syntax highlighing -->
|
9
|
-
<script src="http://rubyworks.github.com/assets/includes/shjs/sh_main.min.js"></script>
|
10
|
-
<script src="http://rubyworks.github.com/assets/includes/shjs/lang/sh_ruby.min.js"></script>
|
11
|
-
<script src="http://rubyworks.github.com/assets/includes/shjs/lang/sh_sh.min.js"></script>
|
12
|
-
<link href="http://rubyworks.github.com/assets/includes/shjs/css/sh_acid.min.css" rel="stylesheet" type="text/css" />
|
13
|
-
</head>
|
14
|
-
<body onload="sh_highlightDocument();">
|
15
|
-
|
16
|
-
<div id="forkme">
|
17
|
-
<a href="http://github.com/rubyworks/lime"><img src="assets/images/forkme.png" /></a>
|
18
|
-
</div>
|
19
|
-
|
20
|
-
<div id="header">
|
21
|
-
<div class="page">
|
22
|
-
<img src="assets/images/cut-lime.png" height="200px" align="right" style="padding-top: 15px;"/>
|
23
|
-
<h1><img src="assets/images/title.png"/></h1>
|
24
|
-
<h2>Slices of Green Behavior</h2>
|
25
|
-
</div>
|
26
|
-
</div>
|
27
|
-
|
28
|
-
<div id="main" class="bordered">
|
29
|
-
<div class="page">
|
30
|
-
|
31
|
-
<div id="nav">
|
32
|
-
<!-- <a href="guide/doc.en/index.html">English Manual</a> · -->
|
33
|
-
<a href="http://wiki.github.com/rubyworks/lime">Wiki</a> <br/>
|
34
|
-
<a href="http://rubydoc.info/gems/lime/frames">API</a> <br/>
|
35
|
-
<a href="http://googlegroups.com/group/rubyworks-mailinglist">Email</a> <br/>
|
36
|
-
<a href="http://github.com/rubyworks/lime/issues">Issue</a> <br/>
|
37
|
-
<a href="http://github.com/rubyworks/lime">Code</a>
|
38
|
-
</div>
|
39
|
-
|
40
|
-
<p>Lime is a behavior-oriented test framework using a Gherkin-based
|
41
|
-
syntax inspeired by Cucumber. Unlike Cucumber, Lime is implemented
|
42
|
-
purely in Ruby, not as a separate parse system, and runs on top of
|
43
|
-
the Ruby Universal Test Harness, <a href="http://rubyworks.github.com/test">Ruby Test</a>.
|
44
|
-
</p>
|
45
|
-
|
46
|
-
<!--
|
47
|
-
<p>Lime uses the <a href="http://rubyworks.github.com/ae">Assertive Expressive</a>
|
48
|
-
assertions framework. This is the same verstile framework used by <a href="http://rubyworks.github.com/qed">Q.E.D.</a>.
|
49
|
-
By default Lime test support the standard <code>#assert</code> and <code>#expect</code> assertion methods.
|
50
|
-
If you wish to use subjunctive terms, either <code>#should</code> or <code>#must</code>, you can load these
|
51
|
-
via a helper script (eg. <code>require 'ae/should'</code>).</p>
|
52
|
-
-->
|
53
|
-
|
54
|
-
</div>
|
55
|
-
</div>
|
56
|
-
|
57
|
-
<div id="example">
|
58
|
-
<div class="page">
|
59
|
-
<h3>Example</h3>
|
60
|
-
|
61
|
-
<p>To give you a taste of what a lime testcase looks like and example based on
|
62
|
-
the one given on Cucumber's homepage. We would write a Lime feature case along
|
63
|
-
the same lines:</p>
|
64
|
-
|
65
|
-
<pre class="sh_ruby">
|
66
|
-
Feature "Addition" do
|
67
|
-
To "avoid silly mistakes"
|
68
|
-
As "a math idiot"
|
69
|
-
We "need to calculate the sum of numbers"
|
70
|
-
|
71
|
-
Scenario "Add two numbers" do
|
72
|
-
Given "I have a calculator"
|
73
|
-
Given "I have entered 50 into the calculator"
|
74
|
-
Given "I have entered 70 into the calculator"
|
75
|
-
When "I press add"
|
76
|
-
Then "the result should be 120 on the screen"
|
77
|
-
end
|
78
|
-
|
79
|
-
Scenario "Add three numbers" do
|
80
|
-
Given "I have a calculator"
|
81
|
-
Given "I have entered 50 into the calculator"
|
82
|
-
Given "I have entered 70 into the calculator"
|
83
|
-
Given "I have entered 90 into the calculator"
|
84
|
-
When "I press add"
|
85
|
-
Then "the result should be 210 on the screen"
|
86
|
-
end
|
87
|
-
|
88
|
-
Given 'I have a calculator' do
|
89
|
-
require 'calculator'
|
90
|
-
@calculator = Calculator.new
|
91
|
-
end
|
92
|
-
|
93
|
-
Given 'I have entered (\d+) into the calculator' do |n|
|
94
|
-
@calculator.push n.to_i
|
95
|
-
end
|
96
|
-
|
97
|
-
When 'I press add' do
|
98
|
-
@result = @calculator.add
|
99
|
-
end
|
100
|
-
|
101
|
-
Then 'the result should be (\d+) on the screen' do |n|
|
102
|
-
@result.assert == n.to_i
|
103
|
-
end
|
104
|
-
end
|
105
|
-
</pre>
|
106
|
-
|
107
|
-
<p>A silly example to be sure, but one we can all easily understand.</p>
|
108
|
-
|
109
|
-
</div>
|
110
|
-
</div>
|
111
|
-
|
112
|
-
<div id="footer" class="bordered">
|
113
|
-
<div class="page">
|
114
|
-
<script type="text/javascript"><!--
|
115
|
-
google_ad_client = "ca-pub-1126154564663472";
|
116
|
-
/* RUBYWORKS 09-10-02 728x90 */
|
117
|
-
google_ad_slot = "0788888658";
|
118
|
-
google_ad_width = 728;
|
119
|
-
google_ad_height = 90;
|
120
|
-
//-->
|
121
|
-
</script>
|
122
|
-
<script type="text/javascript"
|
123
|
-
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
|
124
|
-
</script>
|
125
|
-
|
126
|
-
<br/><br/><br/>
|
127
|
-
|
128
|
-
<div class="copyright" width="100%">
|
129
|
-
<a href="http://rubyworks.github.com/">
|
130
|
-
<img src="assets/images/ruby-logo.png" height="110px" align="left" style="margin: 0 5px; padding: 0 10px" />
|
131
|
-
</a>
|
132
|
-
<a href="http://www.apache.org/licenses/LICENSE-2.0.html">
|
133
|
-
<img src="assets/images/opensource.png" height="120px" align="left" style="padding: 0 10px;" />
|
134
|
-
</a>
|
135
|
-
<a href="github.com/rubyworks/lime">
|
136
|
-
<img src="assets/images/github-logo.png" height="115px" align="left" style="margin: 0; padding: 0 10px;" />
|
137
|
-
</a>
|
138
|
-
<a href="http://testanything.org/wiki/index.php/Main_Page">
|
139
|
-
<img src="assets/images/tap.png" height="113px" align="left" style="margin: 0; padding: 0 20px;" />
|
140
|
-
</a>
|
141
|
-
<a href="">
|
142
|
-
<img src="assets/images/limes-are-good.png" height="117px" align="left" style="margin: 0; padding: 0 10px;" />
|
143
|
-
</a>
|
144
|
-
</div>
|
145
|
-
|
146
|
-
<br style="clear: both;" />
|
147
|
-
|
148
|
-
<div style="margin-top: 30px;">
|
149
|
-
<b>Lime</b>, Copyright © 2009 Thomas Sawyer ·
|
150
|
-
<b>Contact:</b> transfire @ gmail.com
|
151
|
-
</div>
|
152
|
-
</div>
|
153
|
-
</div>
|
154
|
-
|
155
|
-
</body>
|
156
|
-
</html>
|
157
|
-
|
data/try/.testrb
DELETED
data/try/calculator.rb
DELETED
data/try/feature_example.rb
DELETED
@@ -1,40 +0,0 @@
|
|
1
|
-
Feature "Addition" do
|
2
|
-
To "avoid silly mistakes"
|
3
|
-
As "a math idiot"
|
4
|
-
We "need to calculate the sum of numbers"
|
5
|
-
|
6
|
-
Scenario "Add two numbers" do
|
7
|
-
Given "I have a calculator"
|
8
|
-
Given "I have entered 50 into the calculator"
|
9
|
-
Given "I have entered 70 into the calculator"
|
10
|
-
When "I press add"
|
11
|
-
Then "the result should be 120 on the screen"
|
12
|
-
end
|
13
|
-
|
14
|
-
Scenario "Add three numbers" do
|
15
|
-
Given "I have a calculator"
|
16
|
-
Given "I have entered 50 into the calculator"
|
17
|
-
Given "I have entered 70 into the calculator"
|
18
|
-
Given "I have entered 90 into the calculator"
|
19
|
-
When "I press add"
|
20
|
-
Then "the result should be 210 on the screen"
|
21
|
-
end
|
22
|
-
|
23
|
-
Given 'I have a calculator' do
|
24
|
-
require 'calculator'
|
25
|
-
@calculator = Calculator.new
|
26
|
-
end
|
27
|
-
|
28
|
-
Given 'I have entered (\d+) into the calculator' do |n|
|
29
|
-
@calculator.push n.to_i
|
30
|
-
end
|
31
|
-
|
32
|
-
When 'I press add' do
|
33
|
-
@result = @calculator.add
|
34
|
-
end
|
35
|
-
|
36
|
-
Then 'the result should be (\d+) on the screen' do |n|
|
37
|
-
@result.assert == n.to_i
|
38
|
-
end
|
39
|
-
end
|
40
|
-
|