fumoffu 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. data/Gemfile +28 -0
  2. data/Gemfile.lock +31 -0
  3. data/LICENSE.txt +20 -0
  4. data/README.md +91 -0
  5. data/Rakefile +71 -0
  6. data/VERSION +1 -0
  7. data/bin/fumoffu +64 -0
  8. data/lib/fumoffu/controller.rb +15 -0
  9. data/lib/fumoffu/generators/fumoffu_config_generator.rb +17 -0
  10. data/lib/fumoffu/generators/fumoffu_generator.rb +30 -0
  11. data/lib/fumoffu/generators/fumoffu_lib_generator.rb +22 -0
  12. data/lib/fumoffu/generators/fumoffu_src_generator.rb +23 -0
  13. data/lib/fumoffu/generators/tasks/install.rake +9 -0
  14. data/lib/fumoffu/generators/tasks/package.rake +71 -0
  15. data/lib/fumoffu/generators/templates/Gemfile +17 -0
  16. data/lib/fumoffu/generators/templates/Rakefile +54 -0
  17. data/lib/fumoffu/generators/templates/build_configuration.rb +89 -0
  18. data/lib/fumoffu/generators/templates/lib/java/AbsoluteLayout.jar +0 -0
  19. data/lib/fumoffu/generators/templates/lib/java/swing-layout.jar +0 -0
  20. data/lib/fumoffu/generators/templates/scripts/package.sh +6 -0
  21. data/lib/fumoffu/generators/templates/scripts/start.sh +3 -0
  22. data/lib/fumoffu/generators/templates/src/java/org/github/bouba/fumoffu/ActionManager.java +11 -0
  23. data/lib/fumoffu/generators/templates/src/java/org/github/bouba/fumoffu/UIActions.java +11 -0
  24. data/lib/fumoffu/generators/templates/src/java/org/rubyforge/rawr/Main.java +67 -0
  25. data/lib/fumoffu/generators/templates/src/ruby/app/actions/controllers/application_controller.rb +2 -0
  26. data/lib/fumoffu/generators/templates/src/ruby/app/actions/handlers/application_handler.rb +27 -0
  27. data/lib/fumoffu/generators/templates/src/ruby/app/main.rb +11 -0
  28. data/lib/fumoffu/generators/templates/src/ruby/app/setup.rb +45 -0
  29. data/lib/fumoffu/generators/templates/src/ruby/app/utils/component_search.rb +22 -0
  30. data/lib/fumoffu/generators/templates/src/ruby/config/configuration.rb +3 -0
  31. data/lib/fumoffu/generators/templates/src/ruby/config/initializers/app_classes.rb +42 -0
  32. data/lib/fumoffu/generators/templates/src/ruby/config/initializers/init.rb +6 -0
  33. data/lib/fumoffu/generators/templates/src/ruby/config/initializers/java_classes.rb +11 -0
  34. data/lib/fumoffu/generators/templates/src/ruby/config/initializers/ruby_classes.rb +12 -0
  35. data/lib/fumoffu/handler.rb +16 -0
  36. data/lib/fumoffu/java_mapping.rb +22 -0
  37. data/lib/fumoffu/utils/component_search.rb +23 -0
  38. data/lib/fumoffu.rb +48 -0
  39. data/test/coverage/index.html +234 -0
  40. data/test/coverage/jquery-1.3.2.min.js +19 -0
  41. data/test/coverage/jquery.tablesorter.min.js +15 -0
  42. data/test/coverage/lib-fumoffu-controller_rb.html +153 -0
  43. data/test/coverage/lib-fumoffu-generators-fumoffu_config_generator_rb.html +165 -0
  44. data/test/coverage/lib-fumoffu-generators-fumoffu_generator_rb.html +243 -0
  45. data/test/coverage/lib-fumoffu-generators-fumoffu_lib_generator_rb.html +195 -0
  46. data/test/coverage/lib-fumoffu-generators-fumoffu_src_generator_rb.html +201 -0
  47. data/test/coverage/lib-fumoffu-handler_rb.html +159 -0
  48. data/test/coverage/lib-fumoffu-java_mapping_rb.html +195 -0
  49. data/test/coverage/lib-fumoffu-utils-component_search_rb.html +201 -0
  50. data/test/coverage/lib-fumoffu_rb.html +351 -0
  51. data/test/coverage/print.css +12 -0
  52. data/test/coverage/rcov.js +42 -0
  53. data/test/coverage/screen.css +270 -0
  54. data/test/fumoffu/fumoffu_controller_test.rb +18 -0
  55. data/test/fumoffu/fumoffu_test.rb +17 -0
  56. data/test/fumoffu/generators/fumoffu_config_generator_test.rb +22 -0
  57. data/test/fumoffu/generators/fumoffu_generator_test.rb +47 -0
  58. data/test/fumoffu/generators/fumoffu_lib_generator_test.rb +22 -0
  59. data/test/fumoffu/generators/fumoffu_src_generator_test.rb +46 -0
  60. data/test/fumoffu/handler_test.rb +36 -0
  61. data/test/fumoffu/helper/generator_test_helper.rb +27 -0
  62. data/test/fumoffu/helper.rb +15 -0
  63. data/test/fumoffu/java_mapping_test.rb +30 -0
  64. data/test/fumoffu/utils/component_search_test.rb +58 -0
  65. metadata +187 -0
@@ -0,0 +1,11 @@
1
+ package org.github.bouba.fumoffu;
2
+
3
+ /**
4
+ * This class is the Link between the Java Swing interface and the JRuby sources
5
+ * All action that require processing on the swing interface should go through this class
6
+ *
7
+ * @author bouba
8
+ */
9
+ abstract public class ActionManager {
10
+ abstract public void handleAction(java.awt.event.ActionEvent event, UIActions action, java.awt.Component caller);
11
+ }
@@ -0,0 +1,11 @@
1
+ package org.github.bouba.fumoffu;
2
+
3
+ /**
4
+ * This the list of possible actions in the UI, it used as a redirection
5
+ * within the JRuby handlers
6
+ *
7
+ * @author bouba
8
+ */
9
+ public enum UIActions {
10
+ SAMPLE_ACTION
11
+ }
@@ -0,0 +1,67 @@
1
+ package org.rubyforge.rawr;
2
+
3
+ import java.io.BufferedReader;
4
+ import java.io.InputStreamReader;
5
+ import java.io.InputStream;
6
+ import java.io.IOException;
7
+ import java.net.URL;
8
+
9
+
10
+ import java.util.ArrayList;
11
+ import org.jruby.Ruby;
12
+ import org.jruby.RubyInstanceConfig;
13
+ import org.jruby.javasupport.JavaEmbedUtils;
14
+
15
+ public class Main
16
+ {
17
+ public static void main(String[] args) throws Exception
18
+ {
19
+ RubyInstanceConfig config = new RubyInstanceConfig();
20
+ config.setArgv(args);
21
+ Ruby runtime = JavaEmbedUtils.initialize(new ArrayList(0), config);
22
+ String mainRubyFile = "main";
23
+
24
+ ArrayList<String> config_data = new ArrayList<String>();
25
+ try{
26
+ java.io.InputStream ins = Main.class.getClassLoader().getResourceAsStream("run_configuration");
27
+ if (ins == null ) {
28
+ System.err.println("Did not find configuration file 'run_configuration', using defaults.");
29
+ } else {
30
+ config_data = getConfigFileContents(ins);
31
+ }
32
+ }
33
+ catch(IOException ioe)
34
+ {
35
+ System.err.println("Error loading run configuration file 'run_configuration', using defaults: " + ioe);
36
+ }
37
+ catch(java.lang.NullPointerException npe)
38
+ {
39
+ System.err.println("Error loading run configuration file 'run_configuration', using defaults: " + npe );
40
+ }
41
+
42
+ for(String line : config_data) {
43
+ String[] parts = line.split(":");
44
+ if("main_ruby_file".equals(parts[0].replaceAll(" ", ""))) {
45
+ mainRubyFile = parts[1].replaceAll(" ", "");
46
+ }
47
+ }
48
+
49
+ runtime.evalScriptlet("require '" + mainRubyFile + "'");
50
+ }
51
+
52
+ public static URL getResource(String path) {
53
+ return Main.class.getClassLoader().getResource(path);
54
+ }
55
+
56
+ private static ArrayList<String> getConfigFileContents(InputStream input) throws IOException, java.lang.NullPointerException {
57
+ BufferedReader reader = new BufferedReader(new InputStreamReader(input));
58
+ String line;
59
+ ArrayList<String> contents = new ArrayList<String>();
60
+
61
+ while ((line = reader.readLine()) != null) {
62
+ contents.add(line);
63
+ }
64
+ reader.close();
65
+ return(contents);
66
+ }
67
+ }
@@ -0,0 +1,2 @@
1
+ class ApplicationController < Fumoffu::Controller
2
+ end
@@ -0,0 +1,27 @@
1
+ #
2
+ # ActionManager is the a Abstract Class which used within the swing
3
+ # UI to handle a actions
4
+ #
5
+ # In the Fumoffu FrameWork All processed action should go through the ApplicationHandler
6
+ #
7
+
8
+ class ApplicationHandler < ActionManager
9
+
10
+ def initialize
11
+ @handlers = Array.new
12
+ end
13
+
14
+ # java.awt.event.ActionEvent event, String action, Component caller
15
+ def handleAction event, action, caller
16
+ begin
17
+ @handlers.each do |handler|
18
+ return true unless not handler.handleAction(event, action, caller)
19
+ end
20
+
21
+ rescue => e
22
+ # FIXME INTEGRATE THE RUBY LOGGER
23
+ puts "Failed to process action: '#{action.to_s}' "+e.backtrace.join("\n")+":\n "+e.inspect
24
+ end
25
+ return false
26
+ end
27
+ end
@@ -0,0 +1,11 @@
1
+ require File.dirname(__FILE__)+'/setup'
2
+
3
+ ####################################################################
4
+ #
5
+ # Start the APPLICATION
6
+ #
7
+ ####################################################################
8
+
9
+ # Here MainView should be your Java Swing Main Frame
10
+ main_view = MainView.new ApplicationHandler.new
11
+ main_view.setVisible true
@@ -0,0 +1,45 @@
1
+ ####################################################################
2
+ #
3
+ # SETUP THE APPLICATION ROOT DIR
4
+ #
5
+ ####################################################################
6
+
7
+ dir = "#{File.dirname(__FILE__)}".scan(/(.*)\/\w+.jar\!/)
8
+ if dir.size > 0 then
9
+ IS_FROM_JAR = true
10
+ ROOT_DIR = dir
11
+ else
12
+ IS_FROM_JAR = false
13
+ ROOT_DIR = "#{File.dirname(__FILE__)}/../../../"
14
+ end
15
+
16
+ ### Setup the application running environment
17
+
18
+ APP_ENV ||= "development"
19
+
20
+
21
+ ####################################################################
22
+ #
23
+ # LOAD Default class dirs
24
+ #
25
+ ####################################################################
26
+ $LOAD_PATH << "lib" # Adding rubygems classes
27
+
28
+ [
29
+ "utils",
30
+ "commons",
31
+ "models",
32
+ "actions/controllers",
33
+ "actions/helpers",
34
+ "actions/handlers"].each do |d|
35
+ $LOAD_PATH << "app/#{d}"
36
+ end
37
+
38
+
39
+ ####################################################################
40
+ #
41
+ # Application Initializer
42
+ #
43
+ ####################################################################
44
+ require File.dirname(__FILE__)+'/../config/initializers/init'
45
+ require File.dirname(__FILE__)+"/../config/configuration"
@@ -0,0 +1,22 @@
1
+ # To change this template, choose Tools | Templates
2
+ # and open the template in the editor.
3
+
4
+ module ComponentSearch
5
+ def component_by_name component, target
6
+ name = component.getName
7
+ return component unless name.nil? or name != target
8
+
9
+ if component.getParent then
10
+ component_by_name(component.getParent, target)
11
+ else
12
+ return nil
13
+ end
14
+ end
15
+
16
+ def component_child_by_name component, target
17
+ component.getComponents.each do |child_component|
18
+ return child_component unless child_component.getName != target
19
+ end
20
+ return nil
21
+ end
22
+ end
@@ -0,0 +1,3 @@
1
+ # ========================================
2
+ # CONFIGURE
3
+ # ========================================
@@ -0,0 +1,42 @@
1
+ # ================================
2
+ # IMPORT ALL CLASS AND FILES FROM THE PROJECT
3
+ #
4
+
5
+
6
+ def import_from_jar
7
+ # Example
8
+ # this is used to import java generated file from the jar
9
+ # within the application which will be running in java
10
+ # you need to put the name of all the required class
11
+ %w[
12
+ controller
13
+ handler
14
+ application_controller
15
+ application_handler
16
+ ].each do |c|
17
+ require c
18
+ end
19
+
20
+ end
21
+
22
+ def import_for_ruby
23
+ lib_dir = ROOT_DIR+"/src/ruby/app"
24
+
25
+ dirs = [
26
+ "utils",
27
+ "commons",
28
+ "models",
29
+ "actions/controllers",
30
+ "actions/helpers",
31
+ "actions/handlers"
32
+ ]
33
+
34
+ # Example of additional src directory
35
+ # dirs << "db"
36
+
37
+ dirs.each do |dir|
38
+ Dir[lib_dir+"/#{dir}/*.rb"].each {|file| require file }
39
+ end
40
+ end
41
+
42
+ IS_FROM_JAR ? import_from_jar : import_for_ruby
@@ -0,0 +1,6 @@
1
+ # INITIALIZE THE APP
2
+ # IMPORT ALL THE JAVA LIBRARY IN THE PROJECT
3
+
4
+ require File.dirname(__FILE__)+'/ruby_classes'
5
+ require File.dirname(__FILE__)+'/java_classes'
6
+ require File.dirname(__FILE__)+'/app_classes'
@@ -0,0 +1,11 @@
1
+ # ================================
2
+ # IMPORT ALL JAVA CLASS USED IN THE PROJECT
3
+
4
+ # Mandatory Classes
5
+ include_class 'org.github.bouba.fumoffu.UIActions'
6
+ include_class 'org.github.bouba.fumoffu.ActionManager'
7
+
8
+ # view classes
9
+ # Examples
10
+ #include_class 'java.lang.System'
11
+ #include_class 'java.util.ArrayList'
@@ -0,0 +1,12 @@
1
+ # IMPORT ALL THE REQUIRED LIBS
2
+
3
+ require 'rubygems'
4
+ require 'fumoffu'
5
+ require 'fumoffu/utils/component_search'
6
+ require 'fumoffu/controller'
7
+ require 'fumoffu/handler'
8
+ require "java"
9
+
10
+ #LOG
11
+ # CONFIGURATION FILE
12
+ require 'yaml'
@@ -0,0 +1,16 @@
1
+ module Fumoffu
2
+ class Handler
3
+ include Fumoffu::Utils::ComponentSearch
4
+
5
+ def initialize
6
+ @controllers = Hash.new
7
+ end
8
+
9
+
10
+ def handleAction evt, action, caller
11
+ # DO NOTHING - this method shall be implemented by the children
12
+ return false
13
+ end
14
+
15
+ end
16
+ end
@@ -0,0 +1,22 @@
1
+ # ####################################
2
+ # CUSTOM CLASSES
3
+ # ####################################
4
+
5
+ #
6
+ # Object and Classes are overidden to make it easier for to
7
+ # exchange data between the Java accessor and Ruby accessor
8
+ #
9
+
10
+ class Object
11
+ def self.attr_java(*args)
12
+ args.each do |arg|
13
+ str_arg = arg.to_s
14
+ define_method str_arg do
15
+ send "get"+str_arg.split("_").collect(){|n| n.capitalize}.to_s
16
+ end
17
+ define_method str_arg.to_s+"=" do |val|
18
+ send "set"+str_arg.split("_").collect(){|n| n.capitalize}.to_s, val
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,23 @@
1
+ module Fumoffu
2
+ module Utils
3
+ module ComponentSearch
4
+ def component_by_name component, target
5
+ name = component.getName
6
+ return component unless name.nil? or name != target
7
+
8
+ if component.getParent then
9
+ component_by_name(component.getParent, target)
10
+ else
11
+ return nil
12
+ end
13
+ end
14
+
15
+ def component_child_by_name component, target
16
+ component.getComponents.each do |child_component|
17
+ return child_component unless child_component.getName != target
18
+ end
19
+ return nil
20
+ end
21
+ end
22
+ end
23
+ end
data/lib/fumoffu.rb ADDED
@@ -0,0 +1,48 @@
1
+ # Include local files
2
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'fumoffu'))
3
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'fumoffu','generators'))
4
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), 'fumoffu','utils'))
5
+
6
+ module Fumoffu
7
+ class Application
8
+ @@app_dir = Dir.pwd
9
+
10
+ def self.app_dir
11
+ @@app_dir
12
+ end
13
+
14
+ def self.app_dir=new_loc
15
+ @@app_dir = new_loc
16
+ end
17
+
18
+ def initialize
19
+ load_all
20
+ end
21
+
22
+ private
23
+
24
+ def load_all
25
+ load_generators
26
+ load_java_mapping
27
+ load_utils
28
+ load_default
29
+ end
30
+
31
+ def load_default
32
+ require 'controller'
33
+ require 'handler'
34
+ end
35
+
36
+ def load_generators
37
+ require "fumoffu_generator"
38
+ end
39
+
40
+ def load_java_mapping
41
+ require 'java_mapping'
42
+ end
43
+
44
+ def load_utils
45
+ require 'component_search'
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,234 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html lang='en' xml:lang='en' xmlns='http://www.w3.org/1999/xhtml'>
3
+ <head>
4
+ <meta http-equiv="Content-type" content="text/html;charset=UTF-8" />
5
+ <title>Fumoffu C0 Coverage Information - RCov</title>
6
+ <link href="screen.css" media="all" rel="stylesheet" type="text/css" />
7
+ <link href="print.css" media="print" rel="stylesheet" type="text/css" />
8
+
9
+ <script type="text/javascript" src="jquery-1.3.2.min.js"></script>
10
+ <script type="text/javascript" src="jquery.tablesorter.min.js"></script>
11
+ <script type="text/javascript" src="rcov.js"></script>
12
+ </head>
13
+ <body>
14
+ <h1>Fumoffu C0 Coverage Information - RCov</h1>
15
+
16
+
17
+ <noscript><style type="text/css">.if_js { display:none; }</style></noscript>
18
+
19
+ <div class="filters if_js">
20
+ <fieldset>
21
+ <label>File Filter:</label>
22
+ <select id="file_filter" class="filter">
23
+ <option value="all_files">Show All</option>
24
+ <option value="fumoffu">fumoffu/</option><option value="generators">generators/</option><option value="lib">lib/</option><option value="utils">utils/</option>
25
+ </select>
26
+ </fieldset>
27
+ <fieldset>
28
+ <label>Code Coverage Threshold:</label>
29
+ <select id="coverage_filter" class="filter">
30
+ <option value="all_coverage">Show All</option>
31
+ <option value="10">&lt; 10% Coverage</option><option value="20">&lt; 20% Coverage</option><option value="30">&lt; 30% Coverage</option><option value="40">&lt; 40% Coverage</option><option value="50">&lt; 50% Coverage</option><option value="60">&lt; 60% Coverage</option><option value="70">&lt; 70% Coverage</option><option value="80">&lt; 80% Coverage</option><option value="90">&lt; 90% Coverage</option><option value="100">&lt; 100% Coverage</option>
32
+ <option value="110">= 100% Coverage</option>
33
+ </select>
34
+ </fieldset>
35
+ </div>
36
+
37
+ <div class="report_table_wrapper">
38
+ <table class='report' id='report_table'>
39
+ <thead>
40
+ <tr>
41
+ <th class="left_align">Name</th>
42
+ <th class="right_align">Total Lines</th>
43
+ <th class="right_align">Lines of Code</th>
44
+ <th class="left_align">Total Coverage</th>
45
+ <th class="left_align">Code Coverage</th>
46
+ </tr>
47
+ </thead>
48
+ <tfoot>
49
+ <tr>
50
+ <td class="left_align">TOTAL</td>
51
+ <td class='right_align'><tt>216</tt></td>
52
+ <td class='right_align'><tt>170</tt></td>
53
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
54
+ <div class="percent_graph">
55
+ <div class="covered" style="width:100px"></div>
56
+ <div class="uncovered" style="width:0px"></div>
57
+ </div></td>
58
+ <td class="left_align"><div class="percent_graph_legend"><tt class='coverage_total'>100.00%</tt></div>
59
+ <div class="percent_graph">
60
+ <div class="covered" style="width:100px"></div>
61
+ <div class="uncovered" style="width:0px"></div>
62
+ </div></td>
63
+ </tr>
64
+ </tfoot>
65
+ <tbody>
66
+
67
+ <tr class="all_files all_coverage 110 lib even">
68
+ <td class="left_align"><a href="lib-fumoffu_rb.html">lib/fumoffu.rb</a></td>
69
+ <td class='right_align'><tt>48</tt></td>
70
+ <td class='right_align'><tt>37</tt></td>
71
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
72
+ <div class="percent_graph">
73
+ <div class="covered" style="width:100px"></div>
74
+ <div class="uncovered" style="width:0px"></div>
75
+ </div></td>
76
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
77
+ <div class="percent_graph">
78
+ <div class="covered" style="width:100px"></div>
79
+ <div class="uncovered" style="width:0px"></div>
80
+ </div></td>
81
+ </tr>
82
+
83
+ <tr class="all_files all_coverage 110 lib fumoffu odd">
84
+ <td class="left_align"><a href="lib-fumoffu-controller_rb.html">lib/fumoffu/controller.rb</a></td>
85
+ <td class='right_align'><tt>15</tt></td>
86
+ <td class='right_align'><tt>13</tt></td>
87
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
88
+ <div class="percent_graph">
89
+ <div class="covered" style="width:100px"></div>
90
+ <div class="uncovered" style="width:0px"></div>
91
+ </div></td>
92
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
93
+ <div class="percent_graph">
94
+ <div class="covered" style="width:100px"></div>
95
+ <div class="uncovered" style="width:0px"></div>
96
+ </div></td>
97
+ </tr>
98
+
99
+ <tr class="all_files all_coverage 110 lib fumoffu generators even">
100
+ <td class="left_align"><a href="lib-fumoffu-generators-fumoffu_config_generator_rb.html">lib/fumoffu/generators/fumoffu_config_generator.rb</a></td>
101
+ <td class='right_align'><tt>17</tt></td>
102
+ <td class='right_align'><tt>14</tt></td>
103
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
104
+ <div class="percent_graph">
105
+ <div class="covered" style="width:100px"></div>
106
+ <div class="uncovered" style="width:0px"></div>
107
+ </div></td>
108
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
109
+ <div class="percent_graph">
110
+ <div class="covered" style="width:100px"></div>
111
+ <div class="uncovered" style="width:0px"></div>
112
+ </div></td>
113
+ </tr>
114
+
115
+ <tr class="all_files all_coverage 110 lib fumoffu generators odd">
116
+ <td class="left_align"><a href="lib-fumoffu-generators-fumoffu_generator_rb.html">lib/fumoffu/generators/fumoffu_generator.rb</a></td>
117
+ <td class='right_align'><tt>30</tt></td>
118
+ <td class='right_align'><tt>24</tt></td>
119
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
120
+ <div class="percent_graph">
121
+ <div class="covered" style="width:100px"></div>
122
+ <div class="uncovered" style="width:0px"></div>
123
+ </div></td>
124
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
125
+ <div class="percent_graph">
126
+ <div class="covered" style="width:100px"></div>
127
+ <div class="uncovered" style="width:0px"></div>
128
+ </div></td>
129
+ </tr>
130
+
131
+ <tr class="all_files all_coverage 110 lib fumoffu generators even">
132
+ <td class="left_align"><a href="lib-fumoffu-generators-fumoffu_lib_generator_rb.html">lib/fumoffu/generators/fumoffu_lib_generator.rb</a></td>
133
+ <td class='right_align'><tt>22</tt></td>
134
+ <td class='right_align'><tt>18</tt></td>
135
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
136
+ <div class="percent_graph">
137
+ <div class="covered" style="width:100px"></div>
138
+ <div class="uncovered" style="width:0px"></div>
139
+ </div></td>
140
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
141
+ <div class="percent_graph">
142
+ <div class="covered" style="width:100px"></div>
143
+ <div class="uncovered" style="width:0px"></div>
144
+ </div></td>
145
+ </tr>
146
+
147
+ <tr class="all_files all_coverage 110 lib fumoffu generators odd">
148
+ <td class="left_align"><a href="lib-fumoffu-generators-fumoffu_src_generator_rb.html">lib/fumoffu/generators/fumoffu_src_generator.rb</a></td>
149
+ <td class='right_align'><tt>23</tt></td>
150
+ <td class='right_align'><tt>19</tt></td>
151
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
152
+ <div class="percent_graph">
153
+ <div class="covered" style="width:100px"></div>
154
+ <div class="uncovered" style="width:0px"></div>
155
+ </div></td>
156
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
157
+ <div class="percent_graph">
158
+ <div class="covered" style="width:100px"></div>
159
+ <div class="uncovered" style="width:0px"></div>
160
+ </div></td>
161
+ </tr>
162
+
163
+ <tr class="all_files all_coverage 110 lib fumoffu even">
164
+ <td class="left_align"><a href="lib-fumoffu-handler_rb.html">lib/fumoffu/handler.rb</a></td>
165
+ <td class='right_align'><tt>16</tt></td>
166
+ <td class='right_align'><tt>11</tt></td>
167
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
168
+ <div class="percent_graph">
169
+ <div class="covered" style="width:100px"></div>
170
+ <div class="uncovered" style="width:0px"></div>
171
+ </div></td>
172
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
173
+ <div class="percent_graph">
174
+ <div class="covered" style="width:100px"></div>
175
+ <div class="uncovered" style="width:0px"></div>
176
+ </div></td>
177
+ </tr>
178
+
179
+ <tr class="all_files all_coverage 110 lib fumoffu odd">
180
+ <td class="left_align"><a href="lib-fumoffu-java_mapping_rb.html">lib/fumoffu/java_mapping.rb</a></td>
181
+ <td class='right_align'><tt>22</tt></td>
182
+ <td class='right_align'><tt>13</tt></td>
183
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
184
+ <div class="percent_graph">
185
+ <div class="covered" style="width:100px"></div>
186
+ <div class="uncovered" style="width:0px"></div>
187
+ </div></td>
188
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
189
+ <div class="percent_graph">
190
+ <div class="covered" style="width:100px"></div>
191
+ <div class="uncovered" style="width:0px"></div>
192
+ </div></td>
193
+ </tr>
194
+
195
+ <tr class="all_files all_coverage 110 lib fumoffu utils even">
196
+ <td class="left_align"><a href="lib-fumoffu-utils-component_search_rb.html">lib/fumoffu/utils/component_search.rb</a></td>
197
+ <td class='right_align'><tt>23</tt></td>
198
+ <td class='right_align'><tt>21</tt></td>
199
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
200
+ <div class="percent_graph">
201
+ <div class="covered" style="width:100px"></div>
202
+ <div class="uncovered" style="width:0px"></div>
203
+ </div></td>
204
+ <td class="left_align"><div class="percent_graph_legend"><tt class=''>100.00%</tt></div>
205
+ <div class="percent_graph">
206
+ <div class="covered" style="width:100px"></div>
207
+ <div class="uncovered" style="width:0px"></div>
208
+ </div></td>
209
+ </tr>
210
+
211
+ </tbody>
212
+ </table>
213
+ </div>
214
+
215
+ <p>Generated on Thu Feb 24 14:56:23 +0100 2011 with <a href="http://github.com/relevance/rcov">rcov 0.9.8</a></p>
216
+
217
+ <script type="text/javascript">
218
+ $(document).ready(function(){$("#report_table").tablesorter({widgets: ['zebra'], textExtraction: 'complex'});});
219
+ $('.filter').change(function(){
220
+ ff = $('#file_filter').val();
221
+ cf = $('#coverage_filter').val();
222
+ $('table#report_table tbody tr').each(function(i){
223
+ if ((this.className.split(" ").indexOf(ff) > -1) && (this.className.split(" ").indexOf(cf) > -1)) {
224
+ this.style.display = "";
225
+ } else {
226
+ this.style.display = "none";
227
+ };
228
+ restripe();
229
+ })
230
+ })
231
+ </script>
232
+
233
+ </body>
234
+ </html>