neuro 0.4.0 → 0.4.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/CHANGES +6 -0
- data/Rakefile +83 -68
- data/VERSION +1 -1
- data/doc-main.txt +33 -0
- data/examples/ocr.rb +2 -2
- data/ext/neuro.c +1 -39
- data/install.rb +19 -12
- data/lib/neuro.so +0 -0
- data/lib/neuro/display.rb +0 -1
- data/lib/neuro/version.rb +8 -0
- data/neuro.gemspec +25 -0
- data/tests/test_even_odd.rb +1 -3
- data/tests/test_parity.rb +1 -4
- metadata +68 -50
- data/tests/runner.rb +0 -18
data/CHANGES
ADDED
data/Rakefile
CHANGED
@@ -1,42 +1,44 @@
|
|
1
|
-
|
2
|
-
require 'rake/
|
3
|
-
require 'rake/
|
1
|
+
begin
|
2
|
+
require 'rake/gempackagetask'
|
3
|
+
require 'rake/extensiontask'
|
4
|
+
rescue LoadError
|
5
|
+
end
|
6
|
+
|
4
7
|
require 'rbconfig'
|
5
8
|
include Config
|
6
|
-
require 'find'
|
7
|
-
include Find
|
8
9
|
|
10
|
+
require 'rake/clean'
|
11
|
+
CLEAN.include 'doc', 'coverage', FileList["**/*.dump"],
|
12
|
+
FileList["ext/*.{o,so,#{CONFIG['DLEXT']}}"], 'lib/*.so',
|
13
|
+
'ext/Makefile'
|
14
|
+
|
15
|
+
MAKE = ENV['MAKE'] || %w[gmake make].find { |c| system(c, '-v') }
|
9
16
|
PKG_NAME = 'neuro'
|
10
17
|
PKG_VERSION = File.read('VERSION').chomp
|
11
|
-
PKG_FILES = FileList[
|
12
|
-
PKG_FILES.exclude('CVS')
|
13
|
-
PKG_FILES.exclude('pkg')
|
14
|
-
PKG_FILES.exclude(/\.dump$/)
|
18
|
+
PKG_FILES = FileList["**/*"].exclude(/CVS|pkg|doc|tmp|coverage|(\.dump\Z)/).to_a
|
15
19
|
|
16
|
-
task :default =>
|
20
|
+
task :default => :test
|
17
21
|
|
18
22
|
desc "Run unit tests"
|
19
|
-
task
|
20
|
-
|
21
|
-
ruby %{-I../ext runner.rb}
|
22
|
-
end
|
23
|
+
task :test => :compile_ext do
|
24
|
+
sh 'testrb -Iext:lib tests/test_*.rb'
|
23
25
|
end
|
24
26
|
|
25
27
|
desc "Creating documentation"
|
26
28
|
task :doc do
|
27
|
-
sh 'rdoc -
|
29
|
+
sh 'rdoc -t "neuro - Neural Network Extension for Ruby" -m doc-main.txt -o doc doc-main.txt ext/neuro.c lib/neuro/version.rb' # lib/neuro/display.rb'
|
28
30
|
end
|
29
31
|
|
30
32
|
desc "Compiling library"
|
31
|
-
task :
|
33
|
+
task :compile_ext do
|
32
34
|
cd 'ext' do
|
33
35
|
ruby 'extconf.rb'
|
34
|
-
sh
|
36
|
+
sh MAKE
|
35
37
|
end
|
36
38
|
end
|
37
39
|
|
38
40
|
desc "Installing library"
|
39
|
-
task
|
41
|
+
task :install => :test do
|
40
42
|
src = "ext/neuro.#{CONFIG['DLEXT']}"
|
41
43
|
filename = File.basename(src)
|
42
44
|
dst = File.join(CONFIG["sitelibdir"], filename)
|
@@ -49,68 +51,81 @@ task(:install => [:test]) do
|
|
49
51
|
install(src, dst, :verbose => true, :mode => 0644)
|
50
52
|
end
|
51
53
|
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
end
|
62
|
-
|
63
|
-
spec = Gem::Specification.new do |s|
|
64
|
-
|
65
|
-
#### Basic information.
|
66
|
-
|
67
|
-
s.name = 'neuro'
|
68
|
-
s.version = PKG_VERSION
|
69
|
-
s.summary = "Neural Network Extension for Ruby"
|
70
|
-
s.description = <<EOF
|
54
|
+
if defined?(Gem) and defined?(Rake::GemPackageTask) and
|
55
|
+
defined?(Rake::ExtensionTask)
|
56
|
+
then
|
57
|
+
spec_src = <<-GEM
|
58
|
+
Gem::Specification.new do |s|
|
59
|
+
s.name = '#{PKG_NAME}'
|
60
|
+
s.version = '#{PKG_VERSION}'
|
61
|
+
s.summary = "Neural Network Extension for Ruby"
|
62
|
+
s.description = <<EOF
|
71
63
|
A Ruby extension that provides a 2-Layer Back Propagation Neural Network, which
|
72
64
|
can be used to categorize datasets of arbitrary size.
|
73
65
|
EOF
|
74
66
|
|
75
|
-
|
67
|
+
s.files = #{PKG_FILES.to_a.sort.inspect}
|
76
68
|
|
77
|
-
|
78
|
-
#s.requirements << ""
|
69
|
+
s.extensions = "ext/extconf.rb"
|
79
70
|
|
80
|
-
|
71
|
+
s.require_paths << 'ext' << 'lib'
|
81
72
|
|
82
|
-
|
73
|
+
s.has_rdoc = true
|
74
|
+
s.extra_rdoc_files << 'doc-main.txt'
|
75
|
+
s.rdoc_options << '--main' << 'doc-main.txt' << '--title' << 'Neural Network Extension for Ruby'
|
76
|
+
s.test_files.concat #{Dir['tests/test_*.rb'].to_a.sort.inspect}
|
83
77
|
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
#s.bindir = "bin" # Use these for applications.
|
92
|
-
#s.executables = ["foo.rb"]
|
93
|
-
#s.default_executable = "foo.rb"
|
94
|
-
|
95
|
-
#### Documentation and testing.
|
78
|
+
s.author = "Florian Frank"
|
79
|
+
s.email = "flori@ping.de"
|
80
|
+
s.homepage = "http://neuro.rubyforge.org"
|
81
|
+
s.rubyforge_project = '#{PKG_NAME}'
|
82
|
+
end
|
83
|
+
GEM
|
96
84
|
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
85
|
+
desc 'Create a gemspec file'
|
86
|
+
task :gemspec do
|
87
|
+
File.open("#{PKG_NAME}.gemspec", 'w') do |f|
|
88
|
+
f.puts spec_src
|
89
|
+
end
|
90
|
+
end
|
101
91
|
|
102
|
-
|
92
|
+
spec = eval(spec_src)
|
93
|
+
Rake::GemPackageTask.new(spec) do |pkg|
|
94
|
+
pkg.need_tar = true
|
95
|
+
pkg.package_files = PKG_FILES
|
96
|
+
end
|
103
97
|
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
98
|
+
Rake::ExtensionTask.new do |ext|
|
99
|
+
ext.name = PKG_NAME
|
100
|
+
ext.gem_spec = spec
|
101
|
+
ext.cross_compile = true
|
102
|
+
ext.cross_platform = 'i386-mswin32'
|
103
|
+
ext.ext_dir = 'ext'
|
104
|
+
ext.lib_dir = 'lib'
|
105
|
+
end
|
108
106
|
end
|
109
107
|
|
110
|
-
|
111
|
-
|
112
|
-
|
108
|
+
desc m = "Writing version information for #{PKG_VERSION}"
|
109
|
+
task :version do
|
110
|
+
puts m
|
111
|
+
File.open(File.join('lib', 'neuro', 'version.rb'), 'w') do |v|
|
112
|
+
v.puts <<EOT
|
113
|
+
module Neuro
|
114
|
+
# Neuro version
|
115
|
+
VERSION = '#{PKG_VERSION}'
|
116
|
+
VERSION_ARRAY = VERSION.split(/\\./).map { |x| x.to_i } # :nodoc:
|
117
|
+
VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
|
118
|
+
VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
|
119
|
+
VERSION_BUILD = VERSION_ARRAY[2] # :nodoc:
|
120
|
+
end
|
121
|
+
EOT
|
122
|
+
end
|
113
123
|
end
|
114
124
|
|
115
|
-
task :
|
116
|
-
|
125
|
+
task :default => [ :version, :gemspec, :test ]
|
126
|
+
|
127
|
+
desc "Build all gems and archives for a new release."
|
128
|
+
task :release => [ :clean, :version, :gemspec, :cross, :native, :gem ] do
|
129
|
+
system "#$0 clean native gem"
|
130
|
+
system "#$0 clean package"
|
131
|
+
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.4.
|
1
|
+
0.4.1
|
data/doc-main.txt
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
== Description
|
2
|
+
|
3
|
+
A Ruby extension that provides a 2-Layer Back Propagation Neural Network,
|
4
|
+
which can be used to categorize datasets of arbitrary size.
|
5
|
+
|
6
|
+
The network can be easily stored to or restored from the hard disk with
|
7
|
+
the help of Ruby's Marshal facility.
|
8
|
+
|
9
|
+
== Author
|
10
|
+
|
11
|
+
Florian Frank <mailto:flori@ping.de>
|
12
|
+
|
13
|
+
== License
|
14
|
+
|
15
|
+
This is free software; you can redistribute it and/or modify it under
|
16
|
+
the terms of the GNU General Public License Version 2 as published by
|
17
|
+
the Free Software Foundation: http://www.gnu.org/copyleft/gpl.html
|
18
|
+
|
19
|
+
== Download
|
20
|
+
|
21
|
+
The latest version of <b>neuro</b> can be found at
|
22
|
+
|
23
|
+
* http://rubyforge.org/frs/?group_id=554
|
24
|
+
|
25
|
+
The homepage should be located at
|
26
|
+
|
27
|
+
* http://neuro.rubyforge.org
|
28
|
+
|
29
|
+
== Examples
|
30
|
+
|
31
|
+
An example for optical character recognition can be found in the examples
|
32
|
+
subdirectory. Don't forget to check out the tests subdirectory, which
|
33
|
+
contains some additional examples.
|
data/examples/ocr.rb
CHANGED
@@ -113,7 +113,8 @@ if $0 == __FILE__
|
|
113
113
|
ocr = OCR.new
|
114
114
|
loop do
|
115
115
|
puts "", "Input a character from 'A'-'Z': "
|
116
|
-
c = gets
|
116
|
+
c = gets or break
|
117
|
+
c.chomp!
|
117
118
|
c.tr!('a-z', 'A-Z')
|
118
119
|
break unless /^[A-Z]$/.match(c)
|
119
120
|
input_char = OCR.noisify(c, 5)
|
@@ -122,4 +123,3 @@ if $0 == __FILE__
|
|
122
123
|
puts "Understood '#{rec_char.char}':", rec_char
|
123
124
|
end
|
124
125
|
end
|
125
|
-
# vim: set et sw=2 ts=2:
|
data/ext/neuro.c
CHANGED
@@ -624,46 +624,9 @@ static VALUE rb_network_load(VALUE klass, VALUE string)
|
|
624
624
|
return Data_Wrap_Struct(klass, NULL, rb_network_free, network);
|
625
625
|
}
|
626
626
|
|
627
|
-
/*
|
628
|
-
*
|
629
|
-
* = neuro - Neuronal Network Extension for Ruby
|
630
|
-
*
|
631
|
-
* == Description
|
632
|
-
*
|
633
|
-
* A Ruby extension that provides a 2-Layer Back Propagation Neural Network,
|
634
|
-
* which can be used to categorize datasets of arbitrary size.
|
635
|
-
*
|
636
|
-
* The network can be easily stored to or restored from the hard disk with
|
637
|
-
* the help of Ruby's Marshal facility.
|
638
|
-
*
|
639
|
-
* == Author
|
640
|
-
*
|
641
|
-
* Florian Frank <mailto:flori@ping.de>
|
642
|
-
*
|
643
|
-
* == License
|
644
|
-
*
|
645
|
-
* This is free software; you can redistribute it and/or modify it under
|
646
|
-
* the terms of the GNU General Public License Version 2 as published by
|
647
|
-
* the Free Software Foundation: http://www.gnu.org/copyleft/gpl.html
|
648
|
-
*
|
649
|
-
* == Download
|
650
|
-
*
|
651
|
-
* The latest version of <b>neuro</b> can be found at
|
652
|
-
*
|
653
|
-
* * http://rubyforge.org/frs/?group_id=554
|
654
|
-
*
|
655
|
-
* The homepage should be located at
|
656
|
-
*
|
657
|
-
* * http://neuro.rubyforge.org
|
658
|
-
*
|
659
|
-
* == Examples
|
660
|
-
*
|
661
|
-
* An example for optical character recognition can be found in the examples
|
662
|
-
* subdirectory. Don't forget to check out the tests subdirectory, which
|
663
|
-
* contains some additional examples.
|
664
|
-
*/
|
665
627
|
void Init_neuro()
|
666
628
|
{
|
629
|
+
rb_require("neuro/version");
|
667
630
|
rb_mNeuro = rb_define_module("Neuro");
|
668
631
|
rb_cNetwork = rb_define_class_under(rb_mNeuro, "Network", rb_cObject);
|
669
632
|
rb_cNeuroError = rb_define_class("NetworkError", rb_eStandardError);
|
@@ -691,4 +654,3 @@ void Init_neuro()
|
|
691
654
|
id_class = rb_intern("class");
|
692
655
|
id_name = rb_intern("name");
|
693
656
|
}
|
694
|
-
/* vim: set cin sw=4 ts=4: */
|
data/install.rb
CHANGED
@@ -5,18 +5,25 @@ include Config
|
|
5
5
|
require 'fileutils'
|
6
6
|
include FileUtils::Verbose
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
8
|
+
MAKE = if RUBY_PLATFORM =~ /mswin32/i
|
9
|
+
'nmake'
|
10
|
+
else
|
11
|
+
ENV['MAKE'] || %w[gmake make].find { |c| system(c, '-v') }
|
11
12
|
end
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
14
|
+
bindir = CONFIG['bindir']
|
15
|
+
archdir = CONFIG['sitearchdir']
|
16
|
+
libdir = CONFIG['sitelibdir']
|
17
|
+
dlext = CONFIG['DLEXT']
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
mkdir_p
|
21
|
-
install
|
22
|
-
|
19
|
+
cd 'ext' do
|
20
|
+
system 'ruby extconf.rb' or exit 1
|
21
|
+
system "#{MAKE}" or exit 1
|
22
|
+
mkdir_p archdir
|
23
|
+
install "neuro.#{dlext}", archdir
|
24
|
+
end
|
25
|
+
|
26
|
+
mkdir_p dst_dir = File.join(libdir, 'neuro')
|
27
|
+
for file in Dir['lib/neuro/*.rb']
|
28
|
+
install file, File.join(dst_dir, File.basename(file))
|
29
|
+
end
|
data/lib/neuro.so
ADDED
Binary file
|
data/lib/neuro/display.rb
CHANGED
data/neuro.gemspec
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
Gem::Specification.new do |s|
|
2
|
+
s.name = 'neuro'
|
3
|
+
s.version = '0.4.1'
|
4
|
+
s.summary = "Neural Network Extension for Ruby"
|
5
|
+
s.description = <<EOF
|
6
|
+
A Ruby extension that provides a 2-Layer Back Propagation Neural Network, which
|
7
|
+
can be used to categorize datasets of arbitrary size.
|
8
|
+
EOF
|
9
|
+
|
10
|
+
s.files = ["CHANGES", "Rakefile", "VERSION", "examples", "examples/ocr.rb", "ext", "ext/extconf.rb", "ext/neuro.c", "install.rb", "lib", "lib/neuro", "lib/neuro/display.rb", "lib/neuro/version.rb", "neuro.gemspec", "tests", "tests/test_even_odd.rb", "tests/test_parity.rb"]
|
11
|
+
|
12
|
+
s.extensions = "ext/extconf.rb"
|
13
|
+
|
14
|
+
s.require_paths << 'ext' << 'lib'
|
15
|
+
|
16
|
+
s.has_rdoc = true
|
17
|
+
s.extra_rdoc_files << 'doc-main.txt'
|
18
|
+
s.rdoc_options << '--main' << 'doc-main.txt' << '--title' << 'Neural Network Extension for Ruby'
|
19
|
+
s.test_files.concat ["tests/test_even_odd.rb", "tests/test_parity.rb"]
|
20
|
+
|
21
|
+
s.author = "Florian Frank"
|
22
|
+
s.email = "flori@ping.de"
|
23
|
+
s.homepage = "http://neuro.rubyforge.org"
|
24
|
+
s.rubyforge_project = 'neuro'
|
25
|
+
end
|
data/tests/test_even_odd.rb
CHANGED
@@ -1,11 +1,10 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
1
|
#
|
3
2
|
# Stupid little test, that finds out if 5-bit numbers are even or odd.
|
4
3
|
#
|
5
4
|
require 'test/unit'
|
6
5
|
require 'neuro'
|
7
6
|
|
8
|
-
class
|
7
|
+
class TestEvenOdd < Test::Unit::TestCase
|
9
8
|
include Neuro
|
10
9
|
|
11
10
|
@@even = [
|
@@ -66,4 +65,3 @@ class TC_EvenOdd < Test::Unit::TestCase
|
|
66
65
|
end
|
67
66
|
end
|
68
67
|
end
|
69
|
-
# vim: set et sw=2 ts=2:
|
data/tests/test_parity.rb
CHANGED
@@ -1,9 +1,7 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
1
|
require 'test/unit'
|
4
2
|
require 'neuro'
|
5
3
|
|
6
|
-
class
|
4
|
+
class TestParity < Test::Unit::TestCase
|
7
5
|
include Neuro
|
8
6
|
|
9
7
|
MAX_BITS = 4
|
@@ -55,4 +53,3 @@ class TC_Parity < Test::Unit::TestCase
|
|
55
53
|
end
|
56
54
|
end
|
57
55
|
end
|
58
|
-
# vim: set et sw=2 ts=2:
|
metadata
CHANGED
@@ -1,59 +1,77 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
|
-
rubygems_version: 0.8.11
|
3
|
-
specification_version: 1
|
4
2
|
name: neuro
|
5
3
|
version: !ruby/object:Gem::Version
|
6
|
-
version: 0.4.
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
email: flori@ping.de
|
12
|
-
homepage: http://neuro.rubyforge.org
|
13
|
-
rubyforge_project: neuro
|
14
|
-
description: "A Ruby extension that provides a 2-Layer Back Propagation Neural Network, which
|
15
|
-
can be used to categorize datasets of arbitrary size."
|
16
|
-
autorequire: neuro
|
17
|
-
default_executable:
|
4
|
+
version: 0.4.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Florian Frank
|
8
|
+
autorequire:
|
18
9
|
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-08-31 00:00:00 +02:00
|
13
|
+
default_executable:
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: |
|
17
|
+
A Ruby extension that provides a 2-Layer Back Propagation Neural Network, which
|
18
|
+
can be used to categorize datasets of arbitrary size.
|
19
|
+
|
20
|
+
email: flori@ping.de
|
21
|
+
executables: []
|
22
|
+
|
23
|
+
extensions:
|
24
|
+
- ext/extconf.rb
|
25
|
+
extra_rdoc_files:
|
26
|
+
- doc-main.txt
|
27
|
+
files:
|
28
|
+
- CHANGES
|
29
|
+
- Rakefile
|
30
|
+
- VERSION
|
31
|
+
- examples/ocr.rb
|
32
|
+
- ext/extconf.rb
|
33
|
+
- ext/neuro.c
|
34
|
+
- install.rb
|
35
|
+
- lib/neuro.so
|
36
|
+
- lib/neuro/display.rb
|
37
|
+
- lib/neuro/version.rb
|
38
|
+
- neuro.gemspec
|
39
|
+
- tests/test_even_odd.rb
|
40
|
+
- tests/test_parity.rb
|
41
|
+
- doc-main.txt
|
19
42
|
has_rdoc: true
|
20
|
-
|
43
|
+
homepage: http://neuro.rubyforge.org
|
44
|
+
licenses: []
|
45
|
+
|
46
|
+
post_install_message:
|
47
|
+
rdoc_options:
|
48
|
+
- --main
|
49
|
+
- doc-main.txt
|
50
|
+
- --title
|
51
|
+
- Neural Network Extension for Ruby
|
52
|
+
require_paths:
|
53
|
+
- lib
|
54
|
+
- ext
|
55
|
+
- lib
|
56
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
21
57
|
requirements:
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
version: 0.0.0
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: "0"
|
26
61
|
version:
|
27
|
-
|
62
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
63
|
+
requirements:
|
64
|
+
- - ">="
|
65
|
+
- !ruby/object:Gem::Version
|
66
|
+
version: "0"
|
67
|
+
version:
|
68
|
+
requirements: []
|
69
|
+
|
70
|
+
rubyforge_project: neuro
|
71
|
+
rubygems_version: 1.3.4
|
28
72
|
signing_key:
|
29
|
-
|
30
|
-
|
31
|
-
- Florian Frank
|
32
|
-
files:
|
33
|
-
- examples
|
34
|
-
- Rakefile
|
35
|
-
- VERSION
|
36
|
-
- install.rb
|
37
|
-
- ext
|
38
|
-
- lib
|
39
|
-
- tests
|
40
|
-
- examples/ocr.rb
|
41
|
-
- ext/extconf.rb
|
42
|
-
- ext/neuro.c
|
43
|
-
- lib/neuro
|
44
|
-
- lib/neuro/display.rb
|
45
|
-
- tests/runner.rb
|
46
|
-
- tests/test_even_odd.rb
|
47
|
-
- tests/test_parity.rb
|
73
|
+
specification_version: 3
|
74
|
+
summary: Neural Network Extension for Ruby
|
48
75
|
test_files:
|
49
|
-
|
50
|
-
|
51
|
-
- "--main"
|
52
|
-
- Neuro
|
53
|
-
extra_rdoc_files:
|
54
|
-
- ext/neuro.c
|
55
|
-
executables: []
|
56
|
-
extensions:
|
57
|
-
- ext/extconf.rb
|
58
|
-
requirements: []
|
59
|
-
dependencies: []
|
76
|
+
- tests/test_even_odd.rb
|
77
|
+
- tests/test_parity.rb
|
data/tests/runner.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
require 'test/unit/ui/console/testrunner'
|
4
|
-
require 'test/unit/testsuite'
|
5
|
-
$:.unshift File.expand_path(File.dirname($0))
|
6
|
-
require 'test_parity'
|
7
|
-
require 'test_even_odd'
|
8
|
-
|
9
|
-
class TS_AllTests
|
10
|
-
def self.suite
|
11
|
-
suite = Test::Unit::TestSuite.new
|
12
|
-
suite << TC_Parity.suite
|
13
|
-
suite << TC_EvenOdd.suite
|
14
|
-
suite
|
15
|
-
end
|
16
|
-
end
|
17
|
-
Test::Unit::UI::Console::TestRunner.run(TS_AllTests)
|
18
|
-
# vim: set et sw=2 ts=2:
|