perception 0.1.5
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/0 start all Tests.bat +20 -0
 - data/History.txt +4 -0
 - data/License.txt +21 -0
 - data/Manifest.txt +29 -0
 - data/PostInstall.txt +6 -0
 - data/README.txt +55 -0
 - data/Rakefile.rb +127 -0
 - data/demo/demo_pp.rb +163 -0
 - data/demo/demo_zz.rb +332 -0
 - data/init.rb +2 -0
 - data/lib/perception/const.rb +78 -0
 - data/lib/perception/date_and_time.rb +78 -0
 - data/lib/perception/logging.rb +123 -0
 - data/lib/perception/numeric.rb +194 -0
 - data/lib/perception/perception_main.rb +317 -0
 - data/lib/perception/perception_private.rb +231 -0
 - data/lib/perception/ppp.rb +377 -0
 - data/lib/perception/string_spread.rb +155 -0
 - data/lib/perception/test.rb +114 -0
 - data/lib/perception.rb +36 -0
 - data/test/_start_all.rb +10 -0
 - data/test/test_date_and_time.rb +54 -0
 - data/test/test_numeric.rb +104 -0
 - data/test/test_ppp.rb +297 -0
 - data/website/index.html +11 -0
 - data/website/index.txt +83 -0
 - data/website/javascripts/rounded_corners_lite.inc.js +285 -0
 - data/website/stylesheets/screen.css +138 -0
 - data/website/template.html.erb +48 -0
 - metadata +119 -0
 
    
        data/test/test_ppp.rb
    ADDED
    
    | 
         @@ -0,0 +1,297 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
             
     | 
| 
      
 2 
     | 
    
         
            +
            require 'kyanite/unit_test'
         
     | 
| 
      
 3 
     | 
    
         
            +
            require 'perception'
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            class TestPerceptionPPP < UnitTest
         
     | 
| 
      
 7 
     | 
    
         
            +
              
         
     | 
| 
      
 8 
     | 
    
         
            +
              def setup
         
     | 
| 
      
 9 
     | 
    
         
            +
                seee.init  
         
     | 
| 
      
 10 
     | 
    
         
            +
                seee.out = []
         
     | 
| 
      
 11 
     | 
    
         
            +
              end
         
     | 
| 
      
 12 
     | 
    
         
            +
              
         
     | 
| 
      
 13 
     | 
    
         
            +
              
         
     | 
| 
      
 14 
     | 
    
         
            +
              def test_010_symbol
         
     | 
| 
      
 15 
     | 
    
         
            +
                test   = :hallo_test
         
     | 
| 
      
 16 
     | 
    
         
            +
                result1 = ":hallo_test"
         
     | 
| 
      
 17 
     | 
    
         
            +
                result2 = "\n:hallo_test"
         
     | 
| 
      
 18 
     | 
    
         
            +
                assert_equal result1,                test.inspect_pp  
         
     | 
| 
      
 19 
     | 
    
         
            +
                assert_equal result1,                test.inspect_see      
         
     | 
| 
      
 20 
     | 
    
         
            +
                assert_equal result2,                see(test);        setup
         
     | 
| 
      
 21 
     | 
    
         
            +
                assert_equal result2,                see_pp(test);     setup
         
     | 
| 
      
 22 
     | 
    
         
            +
                assert_equal result2,                see_puts(test);   setup
         
     | 
| 
      
 23 
     | 
    
         
            +
                assert_equal result2,                see_print(test);  setup    
         
     | 
| 
      
 24 
     | 
    
         
            +
              end
         
     | 
| 
      
 25 
     | 
    
         
            +
              
         
     | 
| 
      
 26 
     | 
    
         
            +
              
         
     | 
| 
      
 27 
     | 
    
         
            +
              # Bei String unterscheiden sich die Ergebnisse von inspect_see und see 
         
     | 
| 
      
 28 
     | 
    
         
            +
              def test_021_string
         
     | 
| 
      
 29 
     | 
    
         
            +
                test    = %q{Hallo "''" Welt}
         
     | 
| 
      
 30 
     | 
    
         
            +
                result1 = %q{'Hallo "''" Welt'}    
         
     | 
| 
      
 31 
     | 
    
         
            +
                result2 = %q{Hallo "''" Welt}
         
     | 
| 
      
 32 
     | 
    
         
            +
                result1b = %Q{\n'Hallo "''" Welt'}   
         
     | 
| 
      
 33 
     | 
    
         
            +
                result2b = %Q{\nHallo "''" Welt}    
         
     | 
| 
      
 34 
     | 
    
         
            +
                
         
     | 
| 
      
 35 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 36 
     | 
    
         
            +
                assert_equal result1,               test.inspect_see      
         
     | 
| 
      
 37 
     | 
    
         
            +
                assert_equal result1b,              see_pp(test);     setup
         
     | 
| 
      
 38 
     | 
    
         
            +
                
         
     | 
| 
      
 39 
     | 
    
         
            +
                assert_equal result2b,               see_puts(test);   setup
         
     | 
| 
      
 40 
     | 
    
         
            +
                assert_equal result2b,               see_print(test);  setup
         
     | 
| 
      
 41 
     | 
    
         
            +
                assert_equal result2b,               see(test);        setup     
         
     | 
| 
      
 42 
     | 
    
         
            +
              end
         
     | 
| 
      
 43 
     | 
    
         
            +
              
         
     | 
| 
      
 44 
     | 
    
         
            +
              
         
     | 
| 
      
 45 
     | 
    
         
            +
              def test_022_string  
         
     | 
| 
      
 46 
     | 
    
         
            +
                test     = %q{}
         
     | 
| 
      
 47 
     | 
    
         
            +
                result1  = %q{''}
         
     | 
| 
      
 48 
     | 
    
         
            +
                result1b = %Q{\n''}
         
     | 
| 
      
 49 
     | 
    
         
            +
                result2  = %q{empty}
         
     | 
| 
      
 50 
     | 
    
         
            +
                result2b = %Q{\nempty}
         
     | 
| 
      
 51 
     | 
    
         
            +
                
         
     | 
| 
      
 52 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 53 
     | 
    
         
            +
                assert_equal result1,               test.inspect_see      
         
     | 
| 
      
 54 
     | 
    
         
            +
                assert_equal result1b,              see_pp(test);     setup
         
     | 
| 
      
 55 
     | 
    
         
            +
                
         
     | 
| 
      
 56 
     | 
    
         
            +
                assert_equal result2b,               see_puts(test);   setup
         
     | 
| 
      
 57 
     | 
    
         
            +
                assert_equal result2b,               see_print(test);  setup
         
     | 
| 
      
 58 
     | 
    
         
            +
                assert_equal result2b,               see(test);        setup
         
     | 
| 
      
 59 
     | 
    
         
            +
              end  
         
     | 
| 
      
 60 
     | 
    
         
            +
              
         
     | 
| 
      
 61 
     | 
    
         
            +
              
         
     | 
| 
      
 62 
     | 
    
         
            +
              def test_031_array
         
     | 
| 
      
 63 
     | 
    
         
            +
                test   = [1,2,3]
         
     | 
| 
      
 64 
     | 
    
         
            +
                result1  = %q{[1, 2, 3]}    
         
     | 
| 
      
 65 
     | 
    
         
            +
                result1b = %Q{\n[1, 2, 3]}    
         
     | 
| 
      
 66 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 67 
     | 
    
         
            +
                assert_equal result1b,              see_puts(test);   setup
         
     | 
| 
      
 68 
     | 
    
         
            +
                assert_equal result1b,              see_print(test);  setup        
         
     | 
| 
      
 69 
     | 
    
         
            +
                assert_equal result1,               test.inspect_see      
         
     | 
| 
      
 70 
     | 
    
         
            +
                assert_equal result1b,              see_pp(test);     setup
         
     | 
| 
      
 71 
     | 
    
         
            +
                assert_equal result1b,              see(test);        setup    
         
     | 
| 
      
 72 
     | 
    
         
            +
              end
         
     | 
| 
      
 73 
     | 
    
         
            +
              
         
     | 
| 
      
 74 
     | 
    
         
            +
              
         
     | 
| 
      
 75 
     | 
    
         
            +
              def test_032_array
         
     | 
| 
      
 76 
     | 
    
         
            +
                test = []
         
     | 
| 
      
 77 
     | 
    
         
            +
                test << ['this','is','an','array','1']
         
     | 
| 
      
 78 
     | 
    
         
            +
                test << ['this','is','another','array','2']
         
     | 
| 
      
 79 
     | 
    
         
            +
                test << ['and','this','is','another', :tree]
         
     | 
| 
      
 80 
     | 
    
         
            +
                test << ['no',{:key => :value},'just','another', 'array'] 
         
     | 
| 
      
 81 
     | 
    
         
            +
                result1 = %Q{\n[['this', 'is', 'an', 'array', '1'], ['this', 'is', 'another', 'array', '2'], ['and', 'this', 'is', 'another', :tree], ['no', {:key=>:value}, 'just', 'another', 'array']]}
         
     | 
| 
      
 82 
     | 
    
         
            +
                result2 = result1.gsub(%q{'},%q{"})    
         
     | 
| 
      
 83 
     | 
    
         
            +
                result3 = <<ENDOFSTRING
         
     | 
| 
      
 84 
     | 
    
         
            +
            [['this',   'is',           'an',      'array',   '1'],
         
     | 
| 
      
 85 
     | 
    
         
            +
             ['this',   'is',           'another', 'array',   '2'],
         
     | 
| 
      
 86 
     | 
    
         
            +
             ['and',    'this',         'is',      'another', :tree],
         
     | 
| 
      
 87 
     | 
    
         
            +
             ['no',     {:key=>:value}, 'just',    'another', 'array']]
         
     | 
| 
      
 88 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 89 
     | 
    
         
            +
                result3 = result3.chomp.strip.gsub("\n"," \n")
         
     | 
| 
      
 90 
     | 
    
         
            +
                
         
     | 
| 
      
 91 
     | 
    
         
            +
                assert_equal result1.gsub("\n",""), test.inspect_pp  
         
     | 
| 
      
 92 
     | 
    
         
            +
                assert_equal result2,               see_puts(test);   setup
         
     | 
| 
      
 93 
     | 
    
         
            +
                assert_equal result2,               see_print(test);  setup    
         
     | 
| 
      
 94 
     | 
    
         
            +
                assert_equal result3,               test.inspect_see#.gsub("\n",'')      
         
     | 
| 
      
 95 
     | 
    
         
            +
                assert_equal "\n" + result3,        see_pp(test);     setup   
         
     | 
| 
      
 96 
     | 
    
         
            +
                assert_equal "\n" + result3,        see(test);        setup    
         
     | 
| 
      
 97 
     | 
    
         
            +
              end  
         
     | 
| 
      
 98 
     | 
    
         
            +
              
         
     | 
| 
      
 99 
     | 
    
         
            +
              
         
     | 
| 
      
 100 
     | 
    
         
            +
              def test_033_array
         
     | 
| 
      
 101 
     | 
    
         
            +
                  t1 = 'long_longlong_long_long'
         
     | 
| 
      
 102 
     | 
    
         
            +
                  t2 = 'also_long, also_long, also_long_also'
         
     | 
| 
      
 103 
     | 
    
         
            +
                  t3 = 'hallo'
         
     | 
| 
      
 104 
     | 
    
         
            +
                  test = []
         
     | 
| 
      
 105 
     | 
    
         
            +
                  test << %W{one a b c}
         
     | 
| 
      
 106 
     | 
    
         
            +
                  test << ['two', t1, t2, t3]
         
     | 
| 
      
 107 
     | 
    
         
            +
                  test << ['three', t2, t2, t1]
         
     | 
| 
      
 108 
     | 
    
         
            +
                result1 = <<ENDOFSTRING
         
     | 
| 
      
 109 
     | 
    
         
            +
            [['one', 'a', 'b', 'c'],
         
     | 
| 
      
 110 
     | 
    
         
            +
             ['two', 'long_longlong_long_long', 'also_long, also_long, also_long_also', 'hallo'],
         
     | 
| 
      
 111 
     | 
    
         
            +
             ['three', 'also_long, also_long, also_long_also', 'also_long, also_long, also_long_also', 'long_longlong_long_long']]
         
     | 
| 
      
 112 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 113 
     | 
    
         
            +
                result1 = result1.chomp.strip
         
     | 
| 
      
 114 
     | 
    
         
            +
                result2 = result1.gsub(%q{'},%q{"}).gsub("\n",'')
         
     | 
| 
      
 115 
     | 
    
         
            +
                result3 = <<ENDOFSTRING
         
     | 
| 
      
 116 
     | 
    
         
            +
            [['one',     'a',                                    'b',                                    'c'],
         
     | 
| 
      
 117 
     | 
    
         
            +
             ['two',     'long_longlong_long_long',              'also_long, also_long, also_long_also', 'hallo'],
         
     | 
| 
      
 118 
     | 
    
         
            +
             ['three',   'also_long, also_long, also_long_also', 'also_long, also_long, also_long_also', 'long_longlong_long_long']]
         
     | 
| 
      
 119 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 120 
     | 
    
         
            +
                result3=result3.chomp
         
     | 
| 
      
 121 
     | 
    
         
            +
                
         
     | 
| 
      
 122 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 123 
     | 
    
         
            +
                assert_equal "\n" + result2,        see_puts(test);   setup
         
     | 
| 
      
 124 
     | 
    
         
            +
                assert_equal "\n" + result2,        see_print(test);  setup    
         
     | 
| 
      
 125 
     | 
    
         
            +
                # puts
         
     | 
| 
      
 126 
     | 
    
         
            +
                # require File.join(File.dirname(__FILE__), '..', '..', 'klippstein_ruby_extensions', 'lib', 'string' )  
         
     | 
| 
      
 127 
     | 
    
         
            +
                # pp test.inspect_see.overlapdiff(result3)
         
     | 
| 
      
 128 
     | 
    
         
            +
                # puts
         
     | 
| 
      
 129 
     | 
    
         
            +
                assert_equal result3,               test.inspect_see#.gsub("\n",'')      
         
     | 
| 
      
 130 
     | 
    
         
            +
                assert_equal "\n" + result3,        see_pp(test);     setup   
         
     | 
| 
      
 131 
     | 
    
         
            +
                assert_equal "\n" + result3,        see(test);        setup          
         
     | 
| 
      
 132 
     | 
    
         
            +
             
     | 
| 
      
 133 
     | 
    
         
            +
              end  
         
     | 
| 
      
 134 
     | 
    
         
            +
              
         
     | 
| 
      
 135 
     | 
    
         
            +
              
         
     | 
| 
      
 136 
     | 
    
         
            +
              
         
     | 
| 
      
 137 
     | 
    
         
            +
              def test_040_object
         
     | 
| 
      
 138 
     | 
    
         
            +
                seee.logger
         
     | 
| 
      
 139 
     | 
    
         
            +
                see 'hi'
         
     | 
| 
      
 140 
     | 
    
         
            +
                seee.time_last = Time.at(1296702800) 
         
     | 
| 
      
 141 
     | 
    
         
            +
                test = seee 
         
     | 
| 
      
 142 
     | 
    
         
            +
                result1 = <<ENDOFSTRING
         
     | 
| 
      
 143 
     | 
    
         
            +
            #<Perception::SeeSession:0x2860d24
         
     | 
| 
      
 144 
     | 
    
         
            +
             @call_stack_last =  20,
         
     | 
| 
      
 145 
     | 
    
         
            +
             @call_stack_now =   20,
         
     | 
| 
      
 146 
     | 
    
         
            +
             @cursor_now =       0,
         
     | 
| 
      
 147 
     | 
    
         
            +
             @delayed_clear =    false,
         
     | 
| 
      
 148 
     | 
    
         
            +
             @delayed_newlines = 0,
         
     | 
| 
      
 149 
     | 
    
         
            +
             @indent =           false,
         
     | 
| 
      
 150 
     | 
    
         
            +
             @level =            1,
         
     | 
| 
      
 151 
     | 
    
         
            +
             @logger =           #<Logger:0x2ae165c  @default_formatter=#<>,  @formatter=nil,  @level=0,  @logdev=#<<><[][]>>,  @progname=nil>,
         
     | 
| 
      
 152 
     | 
    
         
            +
             @method_last =      :puts,
         
     | 
| 
      
 153 
     | 
    
         
            +
             @method_now =       :pp,
         
     | 
| 
      
 154 
     | 
    
         
            +
             @out =              [],
         
     | 
| 
      
 155 
     | 
    
         
            +
             @speed =            nil,
         
     | 
| 
      
 156 
     | 
    
         
            +
             @string_last =      'hi',
         
     | 
| 
      
 157 
     | 
    
         
            +
             @time_last =        2011-02-03 Thursday 04:13:20>
         
     | 
| 
      
 158 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 159 
     | 
    
         
            +
                result1 =  result1.strip.chomp.gsub("\n",' ')
         
     | 
| 
      
 160 
     | 
    
         
            +
                
         
     | 
| 
      
 161 
     | 
    
         
            +
                # seee-ID austauschen
         
     | 
| 
      
 162 
     | 
    
         
            +
                id = "%x" % (seee.__id__ * 2)
         
     | 
| 
      
 163 
     | 
    
         
            +
                id.sub!(/\Af(?=[[:xdigit:]]{2}+\z)/, '')    if id.sub!(/\A\.\./, '')
         
     | 
| 
      
 164 
     | 
    
         
            +
                id = "0x#{id}"    
         
     | 
| 
      
 165 
     | 
    
         
            +
                result1 = result1.gsub('0x2860d24',id)
         
     | 
| 
      
 166 
     | 
    
         
            +
                
         
     | 
| 
      
 167 
     | 
    
         
            +
                # Logger-ID austauschen
         
     | 
| 
      
 168 
     | 
    
         
            +
                id = "%x" % (seee.logger.__id__ * 2)
         
     | 
| 
      
 169 
     | 
    
         
            +
                id.sub!(/\Af(?=[[:xdigit:]]{2}+\z)/, '')    if id.sub!(/\A\.\./, '')
         
     | 
| 
      
 170 
     | 
    
         
            +
                id = "0x#{id}"    
         
     | 
| 
      
 171 
     | 
    
         
            +
                result1 = result1.gsub('0x2ae165c',id)    
         
     | 
| 
      
 172 
     | 
    
         
            +
                
         
     | 
| 
      
 173 
     | 
    
         
            +
                assert_equal result1,               see(test).strip.chomp.gsub("\n",' ');        setup        
         
     | 
| 
      
 174 
     | 
    
         
            +
              end
         
     | 
| 
      
 175 
     | 
    
         
            +
              
         
     | 
| 
      
 176 
     | 
    
         
            +
              
         
     | 
| 
      
 177 
     | 
    
         
            +
              
         
     | 
| 
      
 178 
     | 
    
         
            +
              def test_053_dictionary
         
     | 
| 
      
 179 
     | 
    
         
            +
                  require 'facets/dictionary'
         
     | 
| 
      
 180 
     | 
    
         
            +
                    
         
     | 
| 
      
 181 
     | 
    
         
            +
                  @dictionary = Dictionary.new  
         
     | 
| 
      
 182 
     | 
    
         
            +
                  @dictionary[:a_dictionary] =    true
         
     | 
| 
      
 183 
     | 
    
         
            +
                  @dictionary[:b_init] =          true
         
     | 
| 
      
 184 
     | 
    
         
            +
                  @dictionary[:c_symbol] =        :symbol
         
     | 
| 
      
 185 
     | 
    
         
            +
                  @dictionary[:d_array] =         [1,2,3]
         
     | 
| 
      
 186 
     | 
    
         
            +
                  @dictionary[:e_integer] =       1
         
     | 
| 
      
 187 
     | 
    
         
            +
                  @dictionary[:f_string] =        'hallo'
         
     | 
| 
      
 188 
     | 
    
         
            +
                    @subdictionary = Dictionary.new    
         
     | 
| 
      
 189 
     | 
    
         
            +
                    @subdictionary[:a] =  :value
         
     | 
| 
      
 190 
     | 
    
         
            +
                    @subdictionary[:b] =  'blubb'
         
     | 
| 
      
 191 
     | 
    
         
            +
                    @subdictionary[:c] =  2
         
     | 
| 
      
 192 
     | 
    
         
            +
                    @subdictionary[:d] =  [:a,:b,:c]
         
     | 
| 
      
 193 
     | 
    
         
            +
                    @subdictionary[:e] =  { :key => :value}
         
     | 
| 
      
 194 
     | 
    
         
            +
                    @subdictionary[:f] =  'hallo'  
         
     | 
| 
      
 195 
     | 
    
         
            +
                  @dictionary[:g_subdictionary] = @subdictionary  
         
     | 
| 
      
 196 
     | 
    
         
            +
                  test = @dictionary
         
     | 
| 
      
 197 
     | 
    
         
            +
                  
         
     | 
| 
      
 198 
     | 
    
         
            +
                result1 = <<ENDOFSTRING
         
     | 
| 
      
 199 
     | 
    
         
            +
            {:a_dictionary=>true,
         
     | 
| 
      
 200 
     | 
    
         
            +
             :b_init=>true,
         
     | 
| 
      
 201 
     | 
    
         
            +
             :c_symbol=>:symbol,
         
     | 
| 
      
 202 
     | 
    
         
            +
             :d_array=>[1, 2, 3],
         
     | 
| 
      
 203 
     | 
    
         
            +
             :e_integer=>1,
         
     | 
| 
      
 204 
     | 
    
         
            +
             :f_string=>'hallo',
         
     | 
| 
      
 205 
     | 
    
         
            +
             :g_subdictionary=>
         
     | 
| 
      
 206 
     | 
    
         
            +
              {:a=>:value,
         
     | 
| 
      
 207 
     | 
    
         
            +
               :b=>'blubb',
         
     | 
| 
      
 208 
     | 
    
         
            +
               :c=>2,
         
     | 
| 
      
 209 
     | 
    
         
            +
               :d=>[:a, :b, :c],
         
     | 
| 
      
 210 
     | 
    
         
            +
               :e=>{:key=>:value},
         
     | 
| 
      
 211 
     | 
    
         
            +
               :f=>'hallo'}}
         
     | 
| 
      
 212 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 213 
     | 
    
         
            +
                result1 = result1.chomp
         
     | 
| 
      
 214 
     | 
    
         
            +
                result2 = '{:a_dictionary=>true, :b_init=>true, :c_symbol=>:symbol, :d_array=>[1, 2, 3], :e_integer=>1, :f_string=>"hallo", :g_subdictionary=>{:a=>:value, :b=>"blubb", :c=>2, :d=>[:a, :b, :c], :e=>{:key=>:value}, :f=>"hallo"}}'
         
     | 
| 
      
 215 
     | 
    
         
            +
                result3 = <<ENDOFSTRING
         
     | 
| 
      
 216 
     | 
    
         
            +
            {:a_dictionary     =>  true,
         
     | 
| 
      
 217 
     | 
    
         
            +
             :b_init           =>  true,
         
     | 
| 
      
 218 
     | 
    
         
            +
             :c_symbol         =>  :symbol,
         
     | 
| 
      
 219 
     | 
    
         
            +
             :d_array          =>  [1,  2,  3],
         
     | 
| 
      
 220 
     | 
    
         
            +
             :e_integer        =>  1,
         
     | 
| 
      
 221 
     | 
    
         
            +
             :f_string         =>  'hallo',
         
     | 
| 
      
 222 
     | 
    
         
            +
             :g_subdictionary  =>  {:a=>:value,  :b=>'blubb',  :c=>2,  :d=>[:a, :b, :c],  :e=>{:key=>:value},  :f=>'hallo'}}
         
     | 
| 
      
 223 
     | 
    
         
            +
            ENDOFSTRING
         
     | 
| 
      
 224 
     | 
    
         
            +
                result3 = result3.chomp
         
     | 
| 
      
 225 
     | 
    
         
            +
                
         
     | 
| 
      
 226 
     | 
    
         
            +
                
         
     | 
| 
      
 227 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 228 
     | 
    
         
            +
                assert_equal "\n" + result2,        see_puts(test);   setup
         
     | 
| 
      
 229 
     | 
    
         
            +
                assert_equal "\n" + result2,        see_print(test);  setup    
         
     | 
| 
      
 230 
     | 
    
         
            +
                
         
     | 
| 
      
 231 
     | 
    
         
            +
                assert_equal result3,               test.inspect_see      
         
     | 
| 
      
 232 
     | 
    
         
            +
                assert_equal "\n" + result3,        see_pp(test);     setup
         
     | 
| 
      
 233 
     | 
    
         
            +
                assert_equal "\n" + result3,        see(test);        setup   
         
     | 
| 
      
 234 
     | 
    
         
            +
              end
         
     | 
| 
      
 235 
     | 
    
         
            +
             
         
     | 
| 
      
 236 
     | 
    
         
            +
             
         
     | 
| 
      
 237 
     | 
    
         
            +
              def test_061_set
         
     | 
| 
      
 238 
     | 
    
         
            +
                test   = SortedSet.new([1,2,3])
         
     | 
| 
      
 239 
     | 
    
         
            +
                result1 = "{1, 2, 3}"
         
     | 
| 
      
 240 
     | 
    
         
            +
                assert_equal result1,               test.inspect_pp  
         
     | 
| 
      
 241 
     | 
    
         
            +
                assert_equal result1,               test.inspect_see        
         
     | 
| 
      
 242 
     | 
    
         
            +
                assert_equal "\n" + result1,        see_puts(test);   setup
         
     | 
| 
      
 243 
     | 
    
         
            +
                assert_equal "\n" + result1,        see_print(test);  setup    
         
     | 
| 
      
 244 
     | 
    
         
            +
                assert_equal "\n" + result1,        see_pp(test);     setup
         
     | 
| 
      
 245 
     | 
    
         
            +
                assert_equal "\n" + result1,        see(test);        setup    
         
     | 
| 
      
 246 
     | 
    
         
            +
              end
         
     | 
| 
      
 247 
     | 
    
         
            +
              
         
     | 
| 
      
 248 
     | 
    
         
            +
              
         
     | 
| 
      
 249 
     | 
    
         
            +
              def test_071_multi
         
     | 
| 
      
 250 
     | 
    
         
            +
                result = see 'hallo', '1'  
         
     | 
| 
      
 251 
     | 
    
         
            +
                assert_equal %Q{\n'hallo'                 '1'},  result        
         
     | 
| 
      
 252 
     | 
    
         
            +
                setup
         
     | 
| 
      
 253 
     | 
    
         
            +
                
         
     | 
| 
      
 254 
     | 
    
         
            +
                result = see 'halloewtewgsdgvsdgdfgbdfxbgdgbdfgdfxgdsf', '1'  
         
     | 
| 
      
 255 
     | 
    
         
            +
                assert_equal %Q{\n'halloewtewgsdgvsdgdfgbdfxbgdgbdfgdfxgdsf'       '1'},  result        
         
     | 
| 
      
 256 
     | 
    
         
            +
                setup    
         
     | 
| 
      
 257 
     | 
    
         
            +
                
         
     | 
| 
      
 258 
     | 
    
         
            +
                result = see :a, '1'
         
     | 
| 
      
 259 
     | 
    
         
            +
                assert_equal %Q{\n:a                      '1'},  result   
         
     | 
| 
      
 260 
     | 
    
         
            +
                setup  
         
     | 
| 
      
 261 
     | 
    
         
            +
             
     | 
| 
      
 262 
     | 
    
         
            +
                result = see [:a,:b], '1'
         
     | 
| 
      
 263 
     | 
    
         
            +
                assert_equal %Q{\n[:a, :b]                '1'},  result   
         
     | 
| 
      
 264 
     | 
    
         
            +
                setup  
         
     | 
| 
      
 265 
     | 
    
         
            +
             
     | 
| 
      
 266 
     | 
    
         
            +
                result = see [1,2], [:a,:b]
         
     | 
| 
      
 267 
     | 
    
         
            +
                assert_equal %Q{\n[1, 2]                  [:a, :b]},  result 
         
     | 
| 
      
 268 
     | 
    
         
            +
                setup
         
     | 
| 
      
 269 
     | 
    
         
            +
                
         
     | 
| 
      
 270 
     | 
    
         
            +
                result = see :a,:b,:c
         
     | 
| 
      
 271 
     | 
    
         
            +
                assert_equal %Q{\n:a                      :b                      :c},  result 
         
     | 
| 
      
 272 
     | 
    
         
            +
                setup
         
     | 
| 
      
 273 
     | 
    
         
            +
             
     | 
| 
      
 274 
     | 
    
         
            +
                result = see 1,2,3
         
     | 
| 
      
 275 
     | 
    
         
            +
                assert_equal %Q{\n1                       2                       3},  result 
         
     | 
| 
      
 276 
     | 
    
         
            +
                setup    
         
     | 
| 
      
 277 
     | 
    
         
            +
              end
         
     | 
| 
      
 278 
     | 
    
         
            +
             
         
     | 
| 
      
 279 
     | 
    
         
            +
              
         
     | 
| 
      
 280 
     | 
    
         
            +
            end # class
         
     | 
| 
      
 281 
     | 
    
         
            +
             
     | 
| 
      
 282 
     | 
    
         
            +
             
     | 
| 
      
 283 
     | 
    
         
            +
             
     | 
| 
      
 284 
     | 
    
         
            +
             
     | 
| 
      
 285 
     | 
    
         
            +
             
     | 
| 
      
 286 
     | 
    
         
            +
             
     | 
| 
      
 287 
     | 
    
         
            +
             
     | 
| 
      
 288 
     | 
    
         
            +
             
     | 
| 
      
 289 
     | 
    
         
            +
             
     | 
| 
      
 290 
     | 
    
         
            +
             
     | 
| 
      
 291 
     | 
    
         
            +
             
     | 
| 
      
 292 
     | 
    
         
            +
             
     | 
| 
      
 293 
     | 
    
         
            +
             
     | 
| 
      
 294 
     | 
    
         
            +
             
     | 
| 
      
 295 
     | 
    
         
            +
             
     | 
| 
      
 296 
     | 
    
         
            +
             
     | 
| 
      
 297 
     | 
    
         
            +
             
     | 
    
        data/website/index.html
    ADDED
    
    | 
         @@ -0,0 +1,11 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <html>
         
     | 
| 
      
 2 
     | 
    
         
            +
            	<head>
         
     | 
| 
      
 3 
     | 
    
         
            +
            		<meta http-equiv="Content-type" content="text/html; charset=utf-8">
         
     | 
| 
      
 4 
     | 
    
         
            +
            		<title>perception</title>
         
     | 
| 
      
 5 
     | 
    
         
            +
            		
         
     | 
| 
      
 6 
     | 
    
         
            +
            	</head>
         
     | 
| 
      
 7 
     | 
    
         
            +
            	<body id="body">
         
     | 
| 
      
 8 
     | 
    
         
            +
            		<p>This page has not yet been created for RubyGem <code>perception</code></p>
         
     | 
| 
      
 9 
     | 
    
         
            +
            		<p>To the developer: To generate it, update website/index.txt and run the rake task <code>website</code> to generate this <code>index.html</code> file.</p>
         
     | 
| 
      
 10 
     | 
    
         
            +
            	</body>
         
     | 
| 
      
 11 
     | 
    
         
            +
            </html>
         
     | 
    
        data/website/index.txt
    ADDED
    
    | 
         @@ -0,0 +1,83 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            h1. perception
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            h1. → 'perception'
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            h2. What
         
     | 
| 
      
 7 
     | 
    
         
            +
             
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            h2. Installing
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
            <pre syntax="ruby">sudo gem install perception</pre>
         
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            h2. The basics
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            h2. Demonstration of usage
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
             
     | 
| 
      
 20 
     | 
    
         
            +
            h2. Forum
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
            "http://groups.google.com/group/perception":http://groups.google.com/group/perception
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
            TODO - create Google Group - perception
         
     | 
| 
      
 25 
     | 
    
         
            +
             
     | 
| 
      
 26 
     | 
    
         
            +
            h2. How to submit patches
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
            Read the "8 steps for fixing other people's code":http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/ and for section "8b: Submit patch to Google Groups":http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/#8b-google-groups, use the Google Group above.
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            TODO - pick SVN or Git instructions
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
            The trunk repository is <code>svn://rubyforge.org/var/svn/perception/trunk</code> for anonymous access.
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
            OOOORRRR
         
     | 
| 
      
 35 
     | 
    
         
            +
             
     | 
| 
      
 36 
     | 
    
         
            +
            You can fetch the source from either:
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
            <% if rubyforge_project_id %>
         
     | 
| 
      
 39 
     | 
    
         
            +
             
     | 
| 
      
 40 
     | 
    
         
            +
            * rubyforge: "http://rubyforge.org/scm/?group_id=<%= rubyforge_project_id %>":http://rubyforge.org/scm/?group_id=<%= rubyforge_project_id %>
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
            <pre>git clone git://rubyforge.org/perception.git</pre>
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            <% else %>
         
     | 
| 
      
 45 
     | 
    
         
            +
             
     | 
| 
      
 46 
     | 
    
         
            +
            * rubyforge: MISSING IN ACTION
         
     | 
| 
      
 47 
     | 
    
         
            +
             
     | 
| 
      
 48 
     | 
    
         
            +
            TODO - You can not created a RubyForge project, OR have not run <code>rubyforge config</code>
         
     | 
| 
      
 49 
     | 
    
         
            +
            yet to refresh your local rubyforge data with this projects' id information.
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
            When you do this, this message will magically disappear!
         
     | 
| 
      
 52 
     | 
    
         
            +
             
     | 
| 
      
 53 
     | 
    
         
            +
            Or you can hack website/index.txt and make it all go away!!
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
            <% end %>
         
     | 
| 
      
 56 
     | 
    
         
            +
             
     | 
| 
      
 57 
     | 
    
         
            +
            * github: "http://github.com/GITHUB_USERNAME/perception/tree/master":http://github.com/GITHUB_USERNAME/perception/tree/master
         
     | 
| 
      
 58 
     | 
    
         
            +
             
     | 
| 
      
 59 
     | 
    
         
            +
            <pre>git clone git://github.com/GITHUB_USERNAME/perception.git</pre>
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
             
     | 
| 
      
 62 
     | 
    
         
            +
            TODO - add "github_username: username" to ~/.rubyforge/user-config.yml and newgem will reuse it for future projects.
         
     | 
| 
      
 63 
     | 
    
         
            +
             
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
            * gitorious: "git://gitorious.org/perception/mainline.git":git://gitorious.org/perception/mainline.git
         
     | 
| 
      
 66 
     | 
    
         
            +
             
     | 
| 
      
 67 
     | 
    
         
            +
            <pre>git clone git://gitorious.org/perception/mainline.git</pre>
         
     | 
| 
      
 68 
     | 
    
         
            +
             
     | 
| 
      
 69 
     | 
    
         
            +
            h3. Build and test instructions
         
     | 
| 
      
 70 
     | 
    
         
            +
             
     | 
| 
      
 71 
     | 
    
         
            +
            <pre>cd perception
         
     | 
| 
      
 72 
     | 
    
         
            +
            rake test
         
     | 
| 
      
 73 
     | 
    
         
            +
            rake install_gem</pre>
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
             
     | 
| 
      
 76 
     | 
    
         
            +
            h2. License
         
     | 
| 
      
 77 
     | 
    
         
            +
             
     | 
| 
      
 78 
     | 
    
         
            +
            This code is free to use under the terms of the MIT license. 
         
     | 
| 
      
 79 
     | 
    
         
            +
             
     | 
| 
      
 80 
     | 
    
         
            +
            h2. Contact
         
     | 
| 
      
 81 
     | 
    
         
            +
             
     | 
| 
      
 82 
     | 
    
         
            +
            Comments are welcome. Send an email to "Bjoern Klippstein":mailto:FIXME email via the "forum":http://groups.google.com/group/perception
         
     | 
| 
      
 83 
     | 
    
         
            +
             
     |