citron 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,10 +0,0 @@
1
- = Release History
2
-
3
- == 0.2.0 / 2011-08-11
4
-
5
- This is the first usable release of Citron.
6
-
7
- Changes:
8
-
9
- * General improvements.
10
-
data/MANIFEST DELETED
@@ -1,14 +0,0 @@
1
- #!mast .ruby .yaropts bin lib spec test [A-Z][A-Z]*
2
- .ruby
3
- lib/citron/test_advice.rb
4
- lib/citron/test_case.rb
5
- lib/citron/test_proc.rb
6
- lib/citron/test_setup.rb
7
- lib/citron/world.rb
8
- lib/citron.rb
9
- HISTORY.rdoc
10
- PROFILE
11
- LICENSE.txt
12
- README.rdoc
13
- VERSION
14
- COPYING.rdoc
data/PROFILE DELETED
@@ -1,31 +0,0 @@
1
- ---
2
- name : citron
3
- title : Citron
4
- summary: Classic Unit-style Test Framework
5
- authors:
6
- - Thomas Sawyer <transfire@gmail.com>
7
-
8
- description:
9
- Citron is a unit testing framework with a classic
10
- test-case/test-unit style.
11
-
12
- resources:
13
- home: http://rubyworks.github.com/citron
14
- code: http://github.com/rubyworks/citron
15
-
16
- repositories:
17
- upstream: git://github.com/proutils/citron.git
18
-
19
- requirements:
20
- - test
21
- - ae
22
- - detroit (build)
23
- - reap (build)
24
- - qed (test)
25
-
26
- organization: RubyWorks
27
-
28
- copyrights:
29
- - 2011 Thomas Sawyer (BSD-2-Clause)
30
-
31
-
data/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.2.0
@@ -1,33 +0,0 @@
1
- require 'minitest/unit'
2
- require 'minitest/autorun'
3
-
4
- class ShowThemHowToBeatIt < MiniTest::Unit::TestCase
5
-
6
- # will fail
7
- def test_show_them_how_to_funky
8
- refute_equal("funky", "funky")
9
- end
10
-
11
- # will pass
12
- def test_show_them_whats_right
13
- assert_equal("right", "right")
14
- end
15
-
16
- # will error
17
- def test_no_one_wants_to_be_defeated
18
- raise SyntaxError
19
- end
20
-
21
- # pending
22
- def test_better_do_what_you_can
23
- raise NotImplementedError
24
- end
25
-
26
- # omit
27
- def test_just_beat_it
28
- e = NotImplementedError.new
29
- #e.set_assertion(true)
30
- raise e
31
- end
32
-
33
- end
@@ -1,59 +0,0 @@
1
- module Citron
2
-
3
- # Test Advice
4
- class TestAdvice
5
-
6
- # The test case to which this advice belongs.
7
- #attr :context
8
-
9
- #
10
- attr :table
11
-
12
- # New case instance.
13
- def initialize
14
- @table = Hash.new{ |h,k| h[k] = {} }
15
- end
16
-
17
- #
18
- def initialize_copy(original)
19
- @table = original.table.clone
20
- end
21
-
22
- #
23
- def [](type)
24
- @table[type.to_sym]
25
- end
26
-
27
- =begin
28
- #
29
- #def teardown=(procedure)
30
- # @teardown = procedure
31
- #end
32
-
33
- # Setup.
34
- def setup(scope=nil)
35
- if scope
36
- scope.instance_eval(&@setup)
37
- else
38
- @setup
39
- end
40
- end
41
-
42
- # Teardown.
43
- def teardown(scope=nil)
44
- if scope
45
- scope.instance_eval(&@teardown) if @teardown
46
- else
47
- @teardown
48
- end
49
- end
50
-
51
- # Returns the description with newlines removed.
52
- def to_s
53
- description.gsub(/\n/, ' ')
54
- end
55
- =end
56
-
57
- end
58
-
59
- end
Binary file
Binary file
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; }
@@ -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: orange; }
17
- #nav a:hover { color: #FFF; text-decoration: none; }
18
-
19
- #header { height: 250px; text-align: left; }
20
- #header h1 { font-size: 100px; margin-bottom: 0; padding: 40px 0 0 0; color: #f7d901; margin-left: -10px; }
21
- #header h2 { padding: 0 0 0 110px; 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.8em; 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
-
@@ -1,147 +0,0 @@
1
- <html>
2
- <head>
3
- <title>Citron</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/citron.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/citron"><img src="assets/images/forkme.png" /></a>
18
- </div>
19
-
20
- <div id="header">
21
- <div class="page">
22
- <img src="assets/images/cut-citron.png" height="200px" align="right" style="padding-top: 15px;"/>
23
- <h1><img src="assets/images/title.png"/></h1>
24
- <h2>Clean Classic Testing</h2>
25
- </div>
26
- </div>
27
-
28
- <div id="main" class="bordered">
29
- <div class="page">
30
-
31
- <p>Citron is classic unit testing framework with a clear domain specific language
32
- notating testcase and test procedure, that runs on top of the Ruby Universal Test
33
- Harness, <a href="http://rubyworks.github.com/test">Ruby Test</a>.</p>
34
-
35
- <!--
36
- <p>Citron uses the <a href="http://rubyworks.github.com/ae">Assertive Expressive</a>
37
- assertions framework. This is the same verstile framework used by <a href="http://rubyworks.github.com/qed">Q.E.D.</a>.
38
- By default Citron test support the standard <code>#assert</code> and <code>#expect</code> assertion methods.
39
- If you wish to use subjunctive terms, either <code>#should</code> or <code>#must</code>, you can load these
40
- via a helper script (eg. <code>require 'ae/should'</code>).</p>
41
- -->
42
-
43
- </div>
44
- </div>
45
-
46
- <div id="example">
47
- <div class="page">
48
-
49
- <div id="nav">
50
- <!-- <a href="guide/doc.en/index.html">English Manual</a> &nbsp;&middot;&nbsp; -->
51
- <a href="http://wiki.github.com/rubyworks/citron">Wiki</a> &nbsp;
52
- <a href="http://rubydoc.info/gems/citron/frames">API</a> &nbsp;
53
- <a href="http://googlegroups.com/group/rubyworks-mailinglist">Email</a> &nbsp;
54
- <a href="http://github.com/rubyworks/citron/issues">Issue</a> &nbsp;
55
- <a href="http://github.com/rubyworks/citron">Code</a>
56
- </div>
57
-
58
- <h3>Example</h3>
59
-
60
- <p>Citron tests are organized into test cases and test procedures.
61
- Here is an example:</p>
62
-
63
- <pre class="sh_ruby">
64
- TestCase "Show them how to Beat It" do
65
-
66
- # will fail
67
- test "show them how to funky" do
68
- "funky".assert != "funky"
69
- end
70
-
71
- # will pass
72
- test "show them what's right" do
73
- "right".assert == "right"
74
- end
75
-
76
- # will error
77
- test "no one wants to be defeated" do
78
- raise SyntaxError
79
- end
80
-
81
- # pending
82
- test "better do what you can" do
83
- raise NotImplementedError
84
- end
85
-
86
- # omit
87
- test "just beat it" do
88
- e = NotImplementedError.new
89
- e.set_assertion(true)
90
- raise e
91
- end
92
-
93
- end
94
- </pre>
95
-
96
- <p>The assertion framework is actually independent of the test framework,
97
- so almost any assertion system will work. In the example above we are using
98
- <a href="http://rubyworks.github.com/ae">A.E.</a></p>
99
-
100
- </div>
101
- </div>
102
-
103
- <div id="footer" class="bordered">
104
- <div class="page">
105
- <script type="text/javascript"><!--
106
- google_ad_client = "ca-pub-1126154564663472";
107
- /* RUBYWORKS 09-10-02 728x90 */
108
- google_ad_slot = "0788888658";
109
- google_ad_width = 728;
110
- google_ad_height = 90;
111
- //-->
112
- </script>
113
- <script type="text/javascript"
114
- src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
115
- </script>
116
-
117
- <br/><br/><br/>
118
-
119
- <div class="copyright" width="100%">
120
- <a href="http://rubyworks.github.com/">
121
- <img src="assets/images/ruby-logo.png" height="110px" align="left" style="margin: 0 5px; padding: 0 10px" />
122
- </a>
123
- <a href="http://www.apache.org/licenses/LICENSE-2.0.html">
124
- <img src="assets/images/opensource.png" height="120px" align="left" style="padding: 0 10px;" />
125
- </a>
126
- <a href="github.com/rubyworks/citron">
127
- <img src="assets/images/github-logo.png" height="115px" align="left" style="margin: 0; padding: 0 10px;" />
128
- </a>
129
- <a href="http://testanything.org/wiki/index.php/Main_Page">
130
- <img src="assets/images/tap.png" height="113px" align="left" style="margin: 0; padding: 0 20px;" />
131
- </a>
132
- <a href="">
133
- <img src="assets/images/citrons-are-good.png" height="117px" align="left" style="margin: 0; padding: 0 10px;" />
134
- </a>
135
- </div>
136
-
137
- <br style="clear: both;" />
138
-
139
- <div style="margin-top: 30px;">
140
- <b>Citron</b>, Copyright &copy; 2009 Thomas Sawyer &middot;
141
- <b>Contact:</b> transfire @ gmail.com
142
- </div>
143
- </div>
144
- </div>
145
-
146
- </body>
147
- </html>
data/try/.test DELETED
@@ -1,2 +0,0 @@
1
- require 'ae'
2
- require 'citron'
@@ -1,30 +0,0 @@
1
- TestCase "Show them how to Beat It" do
2
-
3
- # will fail
4
- test "show them how to funky" do
5
- "funky".assert != "funky"
6
- end
7
-
8
- # will pass
9
- test "show them what's right" do
10
- "right".assert == "right"
11
- end
12
-
13
- # will error
14
- test "no one wants to be defeated" do
15
- raise SyntaxError
16
- end
17
-
18
- # pending
19
- test "better do what you can" do
20
- raise NotImplementedError
21
- end
22
-
23
- # omit
24
- test "just beat it" do
25
- e = NotImplementedError.new
26
- e.set_assertion(true)
27
- raise e
28
- end
29
-
30
- end
@@ -1,23 +0,0 @@
1
- test_case "Example of using setup in a testcase" do
2
-
3
- setup do
4
- @x = 1
5
- end
6
-
7
- test "has setup without a topic" do
8
- @x.assert == 1
9
- end
10
-
11
- setup "has a topic" do
12
- @x = 10
13
- end
14
-
15
- test "has setup with a topic" do
16
- @x.assert == 10
17
- end
18
-
19
- test "alos has setup with a topic" do
20
- @x.assert! == 5
21
- end
22
-
23
- end