Upgraded Rails and RSpec
[monkeycharger.git] / vendor / plugins / rspec / rspec / story_server / prototype / stories.html
blobf86730b96fc6a0fcc158f08fa71a2e37c0899da0
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html
3 PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
4 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
6 <head>
7 <title>Stories</title>
8 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9 <meta http-equiv="Expires" content="-1" />
10 <meta http-equiv="Pragma" content="no-cache" />
11 <script src="javascripts/prototype.js" type="text/javascript"></script>
12 <script src="javascripts/scriptaculous.js" type="text/javascript"></script>
13 <script src="javascripts/application.js" type="text/javascript"></script>
14 <script src="javascripts/unittest.js" type="text/javascript"></script>
16 <link href="stylesheets/style.css" rel="stylesheet" type="text/css" />
17 <link href="stylesheets/test.css" rel="stylesheet" type="text/css" />
18 </head>
19 <body>
20 <!--
21 Classes and ids that are only used by the Story UI, which don't have to be present in
22 the Example report:
24 #nav
25 #stock_steps
26 dl.story
27 ul.steps
28 -->
29 <div id="nav">
30 <a href="#" onclick="javascript:StoryDom.save();">SAVE</a>
31 </div>
32 <div id="container">
33 <ul id="stock_steps" style="display: none;">
34 <li>Given my savings account balance is $balance dollars</li>
35 <li>Given my cash account balance is $balance dollars</li>
36 <li>Given my $which account has been blocked for $n days</li>
37 <li>When I transfer $amount dollars</li>
38 <li>Then my savings account balance should be $balance dollars</li>
39 <li>Then my cash account balance should be $balance dollars</li>
40 </ul>
41 <dl class="story failed">
42 <dt>transfer to cash account</dt>
43 <dd>
44 <p>
45 As a savings account holder<br />
46 I want to transfer money from my savings account<br />
47 So that I can get cash easily from an ATM<br />
48 </p>
49 <dl class="passed">
50 <dt>savings account is in credit</dt>
51 <dd>
52 <ul class="steps">
53 <li class="passed">Given my savings account balance is <span class="param">100</span> dollars</li>
54 <li class="passed">Given my cash account balance is <span class="param">10</span> dollars</li>
55 <li class="passed">When I transfer <span class="param">20</span> dollars</li>
56 <li class="passed">Then my savings account balance should be <span class="param">80</span> dollars</li>
57 <li class="passed">Then my cash account balance should be <span class="param">30</span> dollars</li>
58 </ul>
59 </dd>
60 </dl>
62 <dl class="failed">
63 <dt>savings account is overdrawn</dt>
64 <dd>
65 <ul class="steps">
66 <li class="passed">Given my savings account balance is <span class="param">-20</span> dollars</li>
67 <li class="passed">Given my cash account balance is <span class="param">10</span> dollars</li>
68 <li class="passed">When I transfer <span class="param">20</span> dollars</li>
69 <li class="failed">Then my savings account balance should be <span class="param">-20</span> dollars</li>
70 <li class="failed">Then my cash account balance should be <span class="param">10</span> dollars</li>
71 <li class="pending">Then I should still be poor</li>
72 </ul>
73 </dd>
74 </dl>
75 </dd>
76 </dl>
77 <!-- More stories here... -->
79 <!-- Tests follow -->
80 <div id="testlog"> </div>
81 <script type="text/javascript" language="javascript" charset="utf-8">
82 // <![CDATA[
83 Test.context("RSpec editor tests (this won't be in the final editor - it's just self tests)",{
84 'should extract story narrative': function() {
85 var narrative = StoryDom.narrativeText($$('p')[0].innerHTML);
86 narrative.shouldEqual(
87 " As a savings account holder\n" +
88 " I want to transfer money from my savings account\n" +
89 " So that I can get cash easily from an ATM\n"
93 'should extract step text with two spans': function() {
94 var stepText = StoryDom.stepText('Given <span class="param">this</span> and <span class="param">that</span> stuff');
95 stepText.shouldEqual("Given this and that stuff");
98 'should extract scenario': function() {
99 var scenario = StoryDom.scenario($$('dl')[1]);
100 scenario.shouldEqual(
101 " Scenario: savings account is in credit\n" +
102 " Given my savings account balance is 100 dollars\n" +
103 " Given my cash account balance is 10 dollars\n" +
104 " When I transfer 20 dollars\n" +
105 " Then my savings account balance should be 80 dollars\n" +
106 " Then my cash account balance should be 30 dollars\n"
110 'should extract story from page': function() {
111 var story = StoryDom.story();
112 story.shouldEqual(
113 "Story: transfer to cash account\n" +
114 "\n" +
115 " As a savings account holder\n" +
116 " I want to transfer money from my savings account\n" +
117 " So that I can get cash easily from an ATM\n" +
118 "\n" +
119 " Scenario: savings account is in credit\n" +
120 " Given my savings account balance is 100 dollars\n" +
121 " Given my cash account balance is 10 dollars\n" +
122 " When I transfer 20 dollars\n" +
123 " Then my savings account balance should be 80 dollars\n" +
124 " Then my cash account balance should be 30 dollars\n" +
125 "\n" +
126 " Scenario: savings account is overdrawn\n" +
127 " Given my savings account balance is -20 dollars\n" +
128 " Given my cash account balance is 10 dollars\n" +
129 " When I transfer 20 dollars\n" +
130 " Then my savings account balance should be -20 dollars\n" +
131 " Then my cash account balance should be 10 dollars\n" +
132 " Then I should still be poor\n"
136 'should extract stock steps from dom': function() {
137 var stockSteps = RSpec.stockSteps();
138 stockSteps.shouldEqualEnum([
139 'Given my $which account has been blocked for $n days',
140 'Given my cash account balance is $balance dollars',
141 'Given my savings account balance is $balance dollars',
142 'Then my cash account balance should be $balance dollars',
143 'Then my savings account balance should be $balance dollars',
144 'When I transfer $amount dollars'
148 'should add new stock steps unless they already exist': function() {
149 RSpec.addStockStep('When Godzilla chews over a cable');
150 RSpec.stockSteps().shouldEqualEnum([
151 'Given my $which account has been blocked for $n days',
152 'Given my cash account balance is $balance dollars',
153 'Given my savings account balance is $balance dollars',
154 'Then my cash account balance should be $balance dollars',
155 'Then my savings account balance should be $balance dollars',
156 'When Godzilla chews over a cable',
157 'When I transfer $amount dollars'
159 RSpec.addStockStep('When Godzilla chews over a cable');
160 RSpec.stockSteps().shouldEqualEnum([
161 'Given my $which account has been blocked for $n days',
162 'Given my cash account balance is $balance dollars',
163 'Given my savings account balance is $balance dollars',
164 'Then my cash account balance should be $balance dollars',
165 'Then my savings account balance should be $balance dollars',
166 'When Godzilla chews over a cable',
167 'When I transfer $amount dollars'
171 // ]]>
172 </script>
174 </div>
175 </body>
176 </html>