normatron 0.2.1 → 0.3.0
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/README.textile +35 -48
 - data/Rakefile +6 -7
 - data/lib/generators/normatron/install_generator.rb +23 -0
 - data/lib/generators/normatron/templates/normatron.rb +4 -0
 - data/lib/normatron.rb +22 -8
 - data/lib/normatron/configuration.rb +26 -22
 - data/lib/normatron/extensions.rb +8 -0
 - data/lib/normatron/extensions/active_record.rb +20 -15
 - data/lib/normatron/filters.rb +26 -379
 - data/lib/normatron/filters/blank_filter.rb +29 -0
 - data/lib/normatron/filters/camelize_filter.rb +50 -0
 - data/lib/normatron/filters/capitalize_filter.rb +29 -0
 - data/lib/normatron/filters/chomp_filter.rb +34 -0
 - data/lib/normatron/filters/dasherize_filter.rb +25 -0
 - data/lib/normatron/filters/downcase_filter.rb +29 -0
 - data/lib/normatron/filters/dump_filter.rb +27 -0
 - data/lib/normatron/filters/helpers.rb +44 -0
 - data/lib/normatron/filters/keep_filter.rb +100 -0
 - data/lib/normatron/filters/remove_filter.rb +37 -0
 - data/lib/normatron/filters/squeeze_filter.rb +30 -0
 - data/lib/normatron/filters/squish_filter.rb +28 -0
 - data/lib/normatron/filters/strip_filter.rb +33 -0
 - data/lib/normatron/filters/swapcase_filter.rb +30 -0
 - data/lib/normatron/filters/titleize_filter.rb +29 -0
 - data/lib/normatron/filters/underscore_filter.rb +45 -0
 - data/lib/normatron/filters/upcase_filter.rb +29 -0
 - data/lib/normatron/version.rb +3 -0
 - data/spec/normatron/configuration_spec.rb +60 -0
 - data/spec/normatron/extensions/active_record_spec.rb +96 -0
 - data/spec/normatron/filters/blank_filter_spec.rb +15 -0
 - data/spec/normatron/filters/camelize_filter_spec.rb +42 -0
 - data/spec/normatron/filters/capitalize_filter_spec.rb +14 -0
 - data/spec/normatron/filters/chomp_filter_spec.rb +15 -0
 - data/spec/normatron/filters/dasherize_filter_spec.rb +9 -0
 - data/spec/normatron/filters/downcase_filter_spec.rb +10 -0
 - data/spec/normatron/filters/dump_filter_spec.rb +10 -0
 - data/spec/normatron/filters/keep_filter_spec.rb +86 -0
 - data/spec/normatron/filters/remove_filter_spec.rb +86 -0
 - data/spec/normatron/filters/squeeze_filter_spec.rb +10 -0
 - data/spec/normatron/filters/squish_filter_spec.rb +12 -0
 - data/spec/normatron/filters/strip_filter_spec.rb +12 -0
 - data/spec/normatron/filters/swapcase_filter_spec.rb +12 -0
 - data/spec/normatron/filters/titleize_filter_spec.rb +12 -0
 - data/spec/normatron/filters/underscore_filter_spec.rb +26 -0
 - data/spec/normatron/filters/upcase_filter_spec.rb +10 -0
 - data/spec/normatron_spec.rb +28 -2
 - data/spec/spec_helper.rb +37 -4
 - data/spec/support/my_filters.rb +7 -0
 - data/spec/support/user_model.rb +14 -0
 - metadata +64 -13
 - data/spec/configuration_spec.rb +0 -53
 - data/spec/extensions/active_record_spec.rb +0 -114
 - data/spec/filters_spec.rb +0 -442
 - data/spec/support/model_model.rb +0 -3
 - data/spec/support/schema.rb +0 -7
 
| 
         @@ -0,0 +1,9 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/dasherize_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::DasherizeFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["string_inflections"], "string-inflections"
         
     | 
| 
      
 9 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,10 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/downcase_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::DowncaseFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["caçador"], "caçador"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["CAÇADOR"], "caçador"
         
     | 
| 
      
 10 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,10 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/dump_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::DumpFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["First \n Time"], '"First \n Time"'
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ['First \n Time'], '"First \\\n Time"'
         
     | 
| 
      
 10 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,86 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/keep_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::KeepFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph]
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct]
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper]
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word]
         
     | 
| 
      
 12 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin]
         
     | 
| 
      
 13 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L]
         
     | 
| 
      
 14 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M]
         
     | 
| 
      
 15 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:N]
         
     | 
| 
      
 16 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:P]
         
     | 
| 
      
 17 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:S]
         
     | 
| 
      
 18 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Z]
         
     | 
| 
      
 19 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:C]
         
     | 
| 
      
 20 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :Punct]
         
     | 
| 
      
 21 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :Upper]
         
     | 
| 
      
 22 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :Word]
         
     | 
| 
      
 23 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :Latin]
         
     | 
| 
      
 24 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :L]
         
     | 
| 
      
 25 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :M]
         
     | 
| 
      
 26 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :N]
         
     | 
| 
      
 27 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :P]
         
     | 
| 
      
 28 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :S]
         
     | 
| 
      
 29 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :Z]
         
     | 
| 
      
 30 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Graph, :C]
         
     | 
| 
      
 31 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :Upper]
         
     | 
| 
      
 32 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :Word]
         
     | 
| 
      
 33 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :Latin]
         
     | 
| 
      
 34 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :L]
         
     | 
| 
      
 35 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :M]
         
     | 
| 
      
 36 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :N]
         
     | 
| 
      
 37 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :P]
         
     | 
| 
      
 38 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :S]
         
     | 
| 
      
 39 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :Z]
         
     | 
| 
      
 40 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Punct, :C]
         
     | 
| 
      
 41 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :Word]
         
     | 
| 
      
 42 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :Latin]
         
     | 
| 
      
 43 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :L]
         
     | 
| 
      
 44 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :M]
         
     | 
| 
      
 45 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :N]
         
     | 
| 
      
 46 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :P]
         
     | 
| 
      
 47 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :S]
         
     | 
| 
      
 48 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :Z]
         
     | 
| 
      
 49 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Upper, :C]
         
     | 
| 
      
 50 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :Latin]
         
     | 
| 
      
 51 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :L]
         
     | 
| 
      
 52 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :M]
         
     | 
| 
      
 53 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :N]
         
     | 
| 
      
 54 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :P]
         
     | 
| 
      
 55 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :S]
         
     | 
| 
      
 56 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :Z]
         
     | 
| 
      
 57 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Word, :C]
         
     | 
| 
      
 58 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :L]
         
     | 
| 
      
 59 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :M]
         
     | 
| 
      
 60 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :N]
         
     | 
| 
      
 61 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :P]
         
     | 
| 
      
 62 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :S]
         
     | 
| 
      
 63 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :Z]
         
     | 
| 
      
 64 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Latin, :C]
         
     | 
| 
      
 65 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :M]
         
     | 
| 
      
 66 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :N]
         
     | 
| 
      
 67 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :P]
         
     | 
| 
      
 68 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :S]
         
     | 
| 
      
 69 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :Z]
         
     | 
| 
      
 70 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:L, :C]
         
     | 
| 
      
 71 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M, :N]
         
     | 
| 
      
 72 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M, :P]
         
     | 
| 
      
 73 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M, :S]
         
     | 
| 
      
 74 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M, :Z]
         
     | 
| 
      
 75 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:M, :C]
         
     | 
| 
      
 76 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:N, :P]
         
     | 
| 
      
 77 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:N, :S]
         
     | 
| 
      
 78 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:N, :Z]
         
     | 
| 
      
 79 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:N, :C]
         
     | 
| 
      
 80 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:P, :S]
         
     | 
| 
      
 81 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:P, :Z]
         
     | 
| 
      
 82 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:P, :C]
         
     | 
| 
      
 83 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:S, :Z]
         
     | 
| 
      
 84 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:S, :C]
         
     | 
| 
      
 85 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :keep, [:Z, :C]
         
     | 
| 
      
 86 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,86 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/remove_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::RemoveFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph]
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct]
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper]
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word]
         
     | 
| 
      
 12 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin]
         
     | 
| 
      
 13 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L]
         
     | 
| 
      
 14 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M]
         
     | 
| 
      
 15 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:N]
         
     | 
| 
      
 16 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:P]
         
     | 
| 
      
 17 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:S]
         
     | 
| 
      
 18 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Z]
         
     | 
| 
      
 19 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:C]
         
     | 
| 
      
 20 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :Punct]
         
     | 
| 
      
 21 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :Upper]
         
     | 
| 
      
 22 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :Word]
         
     | 
| 
      
 23 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :Latin]
         
     | 
| 
      
 24 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :L]
         
     | 
| 
      
 25 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :M]
         
     | 
| 
      
 26 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :N]
         
     | 
| 
      
 27 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :P]
         
     | 
| 
      
 28 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :S]
         
     | 
| 
      
 29 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :Z]
         
     | 
| 
      
 30 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Graph, :C]
         
     | 
| 
      
 31 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :Upper]
         
     | 
| 
      
 32 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :Word]
         
     | 
| 
      
 33 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :Latin]
         
     | 
| 
      
 34 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :L]
         
     | 
| 
      
 35 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :M]
         
     | 
| 
      
 36 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :N]
         
     | 
| 
      
 37 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :P]
         
     | 
| 
      
 38 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :S]
         
     | 
| 
      
 39 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :Z]
         
     | 
| 
      
 40 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Punct, :C]
         
     | 
| 
      
 41 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :Word]
         
     | 
| 
      
 42 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :Latin]
         
     | 
| 
      
 43 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :L]
         
     | 
| 
      
 44 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :M]
         
     | 
| 
      
 45 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :N]
         
     | 
| 
      
 46 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :P]
         
     | 
| 
      
 47 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :S]
         
     | 
| 
      
 48 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :Z]
         
     | 
| 
      
 49 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Upper, :C]
         
     | 
| 
      
 50 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :Latin]
         
     | 
| 
      
 51 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :L]
         
     | 
| 
      
 52 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :M]
         
     | 
| 
      
 53 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :N]
         
     | 
| 
      
 54 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :P]
         
     | 
| 
      
 55 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :S]
         
     | 
| 
      
 56 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :Z]
         
     | 
| 
      
 57 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Word, :C]
         
     | 
| 
      
 58 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :L]
         
     | 
| 
      
 59 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :M]
         
     | 
| 
      
 60 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :N]
         
     | 
| 
      
 61 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :P]
         
     | 
| 
      
 62 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :S]
         
     | 
| 
      
 63 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :Z]
         
     | 
| 
      
 64 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Latin, :C]
         
     | 
| 
      
 65 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :M]
         
     | 
| 
      
 66 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :N]
         
     | 
| 
      
 67 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :P]
         
     | 
| 
      
 68 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :S]
         
     | 
| 
      
 69 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :Z]
         
     | 
| 
      
 70 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:L, :C]
         
     | 
| 
      
 71 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M, :N]
         
     | 
| 
      
 72 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M, :P]
         
     | 
| 
      
 73 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M, :S]
         
     | 
| 
      
 74 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M, :Z]
         
     | 
| 
      
 75 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:M, :C]
         
     | 
| 
      
 76 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:N, :P]
         
     | 
| 
      
 77 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:N, :S]
         
     | 
| 
      
 78 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:N, :Z]
         
     | 
| 
      
 79 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:N, :C]
         
     | 
| 
      
 80 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:P, :S]
         
     | 
| 
      
 81 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:P, :Z]
         
     | 
| 
      
 82 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:P, :C]
         
     | 
| 
      
 83 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:S, :Z]
         
     | 
| 
      
 84 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:S, :C]
         
     | 
| 
      
 85 
     | 
    
         
            +
              it_should_behave_like "character cleaner", :remove, [:Z, :C]
         
     | 
| 
      
 86 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,10 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/squeeze_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::SqueezeFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["1 22  333   4444    "        ], "1 2 3 4 "
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["1 22  333   4444    ", "2-3 "], "1 2 3 4444 "
         
     | 
| 
      
 10 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/squish_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::SquishFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["  Friday 05 October 2012  "     ], "Friday 05 October 2012"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["Friday   05   October   2012"   ], "Friday 05 October 2012"
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["Friday \n05 \nOctober \n2012"   ], "Friday 05 October 2012"
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["  Friday  05 \nOctober  2012   "], "Friday 05 October 2012"
         
     | 
| 
      
 12 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/strip_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::StripFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["    to anywhere    "     ], "to anywhere"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["    to anywhere    ", :L ], "to anywhere    "
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["    to anywhere    ", :R ], "    to anywhere"
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["    to anywhere    ", :LR], "to anywhere"
         
     | 
| 
      
 12 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/swapcase_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::SwapcaseFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["caçador"], "CAÇADOR"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["CAÇADOR"], "caçador"
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["CaÇaDoR"], "cAçAdOr"
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["cAçAdOr"], "CaÇaDoR"
         
     | 
| 
      
 12 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,12 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/titleize_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::TitleizeFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["04. until it sleeps"      ], "04. Until It Sleeps"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["04. UNTIL IT SLEEPS"      ], "04. Until It Sleeps"
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["quem é o dono deste sofá?"], "Quem É O Dono Deste Sofá?"
         
     | 
| 
      
 11 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["QUEM É O DONO DESTE SOFÁ?"], "Quem É O Dono Deste Sofá?"
         
     | 
| 
      
 12 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,26 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/underscore_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::UnderscoreFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["ActiveRecord::Errors"             ], "active_record/errors"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["DadosHistóricos::Período::Empresa"], "dados_históricos/período/empresa"
         
     | 
| 
      
 10 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["ÍmparPar::NorteSul"               ], "ímpar_par/norte_sul"
         
     | 
| 
      
 11 
     | 
    
         
            +
              
         
     | 
| 
      
 12 
     | 
    
         
            +
              context "should affect acronyms" do
         
     | 
| 
      
 13 
     | 
    
         
            +
                let(:inflections) { ActiveSupport::Inflector::Inflections.instance }
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
                before(:all) do
         
     | 
| 
      
 16 
     | 
    
         
            +
                  inflections.acronym 'docType'
         
     | 
| 
      
 17 
     | 
    
         
            +
                end
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
                after(:all) do
         
     | 
| 
      
 20 
     | 
    
         
            +
                  inflections.acronyms.delete("doctype")
         
     | 
| 
      
 21 
     | 
    
         
            +
                end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
                it_should_behave_like "evaluable filter", ["docTypeStop::RunSSL::Xml::MixHTTP" ], "doctype_stop/run_ssl/xml/mix_http"
         
     | 
| 
      
 24 
     | 
    
         
            +
                it_should_behave_like "evaluable filter", ["DocTypeStop::RunSSL::Xml::MixHTTP" ], "doc_type_stop/run_ssl/xml/mix_http"
         
     | 
| 
      
 25 
     | 
    
         
            +
              end
         
     | 
| 
      
 26 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,10 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 4 
     | 
    
         
            +
            require 'normatron/filters/upcase_filter'
         
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            describe Normatron::Filters::UpcaseFilter do
         
     | 
| 
      
 7 
     | 
    
         
            +
              it_should_behave_like "string processor"
         
     | 
| 
      
 8 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["caçador"], "CAÇADOR"
         
     | 
| 
      
 9 
     | 
    
         
            +
              it_should_behave_like "evaluable filter", ["CAÇADOR"], "CAÇADOR"
         
     | 
| 
      
 10 
     | 
    
         
            +
            end
         
     | 
    
        data/spec/normatron_spec.rb
    CHANGED
    
    | 
         @@ -1,10 +1,10 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            require  
     | 
| 
      
 1 
     | 
    
         
            +
            require 'spec_helper'
         
     | 
| 
      
 2 
     | 
    
         
            +
            require 'normatron'
         
     | 
| 
       2 
3 
     | 
    
         | 
| 
       3 
4 
     | 
    
         
             
            describe Normatron do
         
     | 
| 
       4 
5 
     | 
    
         | 
| 
       5 
6 
     | 
    
         
             
              specify do
         
     | 
| 
       6 
7 
     | 
    
         
             
                described_class.should respond_to :configuration
         
     | 
| 
       7 
     | 
    
         
            -
                described_class.should respond_to :configure
         
     | 
| 
       8 
8 
     | 
    
         
             
                described_class.should respond_to :setup
         
     | 
| 
       9 
9 
     | 
    
         
             
                described_class.should respond_to :config
         
     | 
| 
       10 
10 
     | 
    
         
             
              end
         
     | 
| 
         @@ -15,4 +15,30 @@ describe Normatron do 
     | 
|
| 
       15 
15 
     | 
    
         
             
                it { config.should be_an_instance_of Normatron::Configuration }
         
     | 
| 
       16 
16 
     | 
    
         
             
                it { expect { |b| Normatron.setup(&b) }.to yield_control }
         
     | 
| 
       17 
17 
     | 
    
         
             
              end
         
     | 
| 
      
 18 
     | 
    
         
            +
             
     | 
| 
      
 19 
     | 
    
         
            +
              describe :build_hash do
         
     | 
| 
      
 20 
     | 
    
         
            +
                context "with single filter hash" do
         
     | 
| 
      
 21 
     | 
    
         
            +
                  it { described_class.build_hash( :a               ).should == { a: nil } }
         
     | 
| 
      
 22 
     | 
    
         
            +
                  it { described_class.build_hash( [:a]             ).should == { a: nil } }
         
     | 
| 
      
 23 
     | 
    
         
            +
                  it { described_class.build_hash( [[:a]]           ).should == { a: nil } }
         
     | 
| 
      
 24 
     | 
    
         
            +
                  it { described_class.build_hash( [[:a, :b]]       ).should == { a: [:b] } }
         
     | 
| 
      
 25 
     | 
    
         
            +
                  it { described_class.build_hash( {:a => :b}       ).should == { a: [:b] } }
         
     | 
| 
      
 26 
     | 
    
         
            +
                  it { described_class.build_hash( {:a => [:b]}     ).should == { a: [:b] } }
         
     | 
| 
      
 27 
     | 
    
         
            +
                  it { described_class.build_hash( {:a => [[:b]]}   ).should == { a: [[:b]] } }
         
     | 
| 
      
 28 
     | 
    
         
            +
                  it { described_class.build_hash( [{:a => [[:b]]}] ).should == { a: [[:b]] } }
         
     | 
| 
      
 29 
     | 
    
         
            +
                end
         
     | 
| 
      
 30 
     | 
    
         
            +
             
     | 
| 
      
 31 
     | 
    
         
            +
                context "with double filters hash" do
         
     | 
| 
      
 32 
     | 
    
         
            +
                  it { described_class.build_hash( :a, :b               ).should == { a: nil, b: nil } }
         
     | 
| 
      
 33 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, :b]             ).should == { a: nil, b: nil } }
         
     | 
| 
      
 34 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, :b => [:c, :d]] ).should == { a: nil, b: [:c, :d] } }
         
     | 
| 
      
 35 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, [:b, :c, :d]]   ).should == { a: nil, b: [:c, :d] } }
         
     | 
| 
      
 36 
     | 
    
         
            +
                end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
                context "with trible filters hash" do
         
     | 
| 
      
 39 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, [:b, :c, :d], { e: [:f, :g] }]    ).should == { a: nil, b: [:c, :d], e: [:f, :g] } }
         
     | 
| 
      
 40 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, { b: [:c, :d] }, { e: [:f, :g] }] ).should == { a: nil, b: [:c, :d], e: [:f, :g] } }
         
     | 
| 
      
 41 
     | 
    
         
            +
                  it { described_class.build_hash( [:a, { b: [:c, :d], e: [:f, :g] }]     ).should == { a: nil, b: [:c, :d], e: [:f, :g] } }
         
     | 
| 
      
 42 
     | 
    
         
            +
                end
         
     | 
| 
      
 43 
     | 
    
         
            +
              end
         
     | 
| 
       18 
44 
     | 
    
         
             
            end
         
     | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    | 
         @@ -1,6 +1,39 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
     | 
    
         
            -
            require "normatron"
         
     | 
| 
      
 1 
     | 
    
         
            +
            # encoding: UTF-8
         
     | 
| 
       3 
2 
     | 
    
         | 
| 
       4 
     | 
    
         
            -
             
     | 
| 
      
 3 
     | 
    
         
            +
            require "active_record"
         
     | 
| 
       5 
4 
     | 
    
         
             
            Dir[File.dirname(__FILE__) + "/support/**/*.rb"].each { |f| require f }
         
     | 
| 
       6 
     | 
    
         
            -
             
     | 
| 
      
 5 
     | 
    
         
            +
             
     | 
| 
      
 6 
     | 
    
         
            +
            shared_examples "evaluable filter" do |args, expected|
         
     | 
| 
      
 7 
     | 
    
         
            +
              if args.size == 1
         
     | 
| 
      
 8 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0]).should_not equal expected }
         
     | 
| 
      
 9 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0]).should eq expected }
         
     | 
| 
      
 10 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0]).should be_a String }
         
     | 
| 
      
 11 
     | 
    
         
            +
              else
         
     | 
| 
      
 12 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0], *args[1..-1]).should_not equal expected }
         
     | 
| 
      
 13 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0], *args[1..-1]).should eq expected }
         
     | 
| 
      
 14 
     | 
    
         
            +
                it { subject.send(:evaluate, args[0], *args[1..-1]).should be_a String }
         
     | 
| 
      
 15 
     | 
    
         
            +
              end
         
     | 
| 
      
 16 
     | 
    
         
            +
            end
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
            shared_examples "string processor" do |*args|
         
     | 
| 
      
 19 
     | 
    
         
            +
              let(:number) { rand(1000) }
         
     | 
| 
      
 20 
     | 
    
         
            +
             
     | 
| 
      
 21 
     | 
    
         
            +
              if args.any?
         
     | 
| 
      
 22 
     | 
    
         
            +
                it { subject.send(:evaluate, number, args).should eq number }
         
     | 
| 
      
 23 
     | 
    
         
            +
                it { subject.send(:evaluate, nil, args).should be_nil }
         
     | 
| 
      
 24 
     | 
    
         
            +
              else
         
     | 
| 
      
 25 
     | 
    
         
            +
                it { subject.send(:evaluate, number).should eq number }
         
     | 
| 
      
 26 
     | 
    
         
            +
                it { subject.send(:evaluate, nil).should be_nil }
         
     | 
| 
      
 27 
     | 
    
         
            +
              end
         
     | 
| 
      
 28 
     | 
    
         
            +
            end
         
     | 
| 
      
 29 
     | 
    
         
            +
             
     | 
| 
      
 30 
     | 
    
         
            +
            shared_examples "character cleaner" do |action, properties|
         
     | 
| 
      
 31 
     | 
    
         
            +
              let(:word) {"ᰄ긚 ᧔瑤л꽥๏ ѨDꨥ\aՇ謬ꗀᶆᵆ쳻ῼἬ鿃ႍꥈᤫ꙲⅟౮ⅰ⅘༌_゠⟦〉⸠›⸓⌟⅂₧௹¨⣭  \u2028\u2029\u008C\u0011\uA7E5" }
         
     | 
| 
      
 32 
     | 
    
         
            +
              let(:regex) do
         
     | 
| 
      
 33 
     | 
    
         
            +
                construct = properties.map { |p| "\\p{#{p.to_s}}" } * ""
         
     | 
| 
      
 34 
     | 
    
         
            +
                construct = "[#{'^' if action == :keep}#{construct}]"
         
     | 
| 
      
 35 
     | 
    
         
            +
                Regexp.new(construct.force_encoding "UTF-8")
         
     | 
| 
      
 36 
     | 
    
         
            +
              end
         
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
      
 38 
     | 
    
         
            +
              it { subject.evaluate(word, properties).should eq word.gsub(regex, '') }
         
     | 
| 
      
 39 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,14 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            ActiveRecord::Base.establish_connection :adapter => "sqlite3", :database => ":memory:"
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            ActiveRecord::Schema.define(:version => 0) do
         
     | 
| 
      
 4 
     | 
    
         
            +
              create_table :users do |t|
         
     | 
| 
      
 5 
     | 
    
         
            +
                t.string :login
         
     | 
| 
      
 6 
     | 
    
         
            +
                t.string :password
         
     | 
| 
      
 7 
     | 
    
         
            +
                t.string :email
         
     | 
| 
      
 8 
     | 
    
         
            +
                t.string :phone
         
     | 
| 
      
 9 
     | 
    
         
            +
              end
         
     | 
| 
      
 10 
     | 
    
         
            +
            end
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
            class User < ActiveRecord::Base
         
     | 
| 
      
 13 
     | 
    
         
            +
              attr_accessible :login, :password, :email, :phone
         
     | 
| 
      
 14 
     | 
    
         
            +
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: normatron
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.3.0
         
     | 
| 
       5 
5 
     | 
    
         
             
              prerelease: 
         
     | 
| 
       6 
6 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       7 
7 
     | 
    
         
             
            authors:
         
     | 
| 
         @@ -9,7 +9,7 @@ authors: 
     | 
|
| 
       9 
9 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       10 
10 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       11 
11 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       12 
     | 
    
         
            -
            date: 2012-10- 
     | 
| 
      
 12 
     | 
    
         
            +
            date: 2012-10-10 00:00:00.000000000 Z
         
     | 
| 
       13 
13 
     | 
    
         
             
            dependencies:
         
     | 
| 
       14 
14 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       15 
15 
     | 
    
         
             
              name: activerecord
         
     | 
| 
         @@ -75,7 +75,7 @@ dependencies: 
     | 
|
| 
       75 
75 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
       76 
76 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       77 
77 
     | 
    
         
             
                    version: 2.10.0
         
     | 
| 
       78 
     | 
    
         
            -
            description: ! "    Normatron is  
     | 
| 
      
 78 
     | 
    
         
            +
            description: ! "    Normatron is a Ruby On Rails plugin that perform attribute normalizations
         
     | 
| 
       79 
79 
     | 
    
         
             
              for ActiveRecord objects.\n    With it you can normalize attributes to the desired
         
     | 
| 
       80 
80 
     | 
    
         
             
              format before saving them in the database.\n    This gem inhibits the work of having
         
     | 
| 
       81 
81 
     | 
    
         
             
              to override attributes or create a specific method to perform most of the normalizations.\n"
         
     | 
| 
         @@ -85,20 +85,56 @@ executables: [] 
     | 
|
| 
       85 
85 
     | 
    
         
             
            extensions: []
         
     | 
| 
       86 
86 
     | 
    
         
             
            extra_rdoc_files: []
         
     | 
| 
       87 
87 
     | 
    
         
             
            files:
         
     | 
| 
      
 88 
     | 
    
         
            +
            - lib/generators/normatron/templates/normatron.rb
         
     | 
| 
      
 89 
     | 
    
         
            +
            - lib/generators/normatron/install_generator.rb
         
     | 
| 
       88 
90 
     | 
    
         
             
            - lib/normatron/filters.rb
         
     | 
| 
       89 
91 
     | 
    
         
             
            - lib/normatron/configuration.rb
         
     | 
| 
      
 92 
     | 
    
         
            +
            - lib/normatron/filters/squeeze_filter.rb
         
     | 
| 
      
 93 
     | 
    
         
            +
            - lib/normatron/filters/swapcase_filter.rb
         
     | 
| 
      
 94 
     | 
    
         
            +
            - lib/normatron/filters/keep_filter.rb
         
     | 
| 
      
 95 
     | 
    
         
            +
            - lib/normatron/filters/underscore_filter.rb
         
     | 
| 
      
 96 
     | 
    
         
            +
            - lib/normatron/filters/camelize_filter.rb
         
     | 
| 
      
 97 
     | 
    
         
            +
            - lib/normatron/filters/titleize_filter.rb
         
     | 
| 
      
 98 
     | 
    
         
            +
            - lib/normatron/filters/upcase_filter.rb
         
     | 
| 
      
 99 
     | 
    
         
            +
            - lib/normatron/filters/capitalize_filter.rb
         
     | 
| 
      
 100 
     | 
    
         
            +
            - lib/normatron/filters/dump_filter.rb
         
     | 
| 
      
 101 
     | 
    
         
            +
            - lib/normatron/filters/remove_filter.rb
         
     | 
| 
      
 102 
     | 
    
         
            +
            - lib/normatron/filters/strip_filter.rb
         
     | 
| 
      
 103 
     | 
    
         
            +
            - lib/normatron/filters/blank_filter.rb
         
     | 
| 
      
 104 
     | 
    
         
            +
            - lib/normatron/filters/squish_filter.rb
         
     | 
| 
      
 105 
     | 
    
         
            +
            - lib/normatron/filters/dasherize_filter.rb
         
     | 
| 
      
 106 
     | 
    
         
            +
            - lib/normatron/filters/helpers.rb
         
     | 
| 
      
 107 
     | 
    
         
            +
            - lib/normatron/filters/downcase_filter.rb
         
     | 
| 
      
 108 
     | 
    
         
            +
            - lib/normatron/filters/chomp_filter.rb
         
     | 
| 
      
 109 
     | 
    
         
            +
            - lib/normatron/extensions.rb
         
     | 
| 
      
 110 
     | 
    
         
            +
            - lib/normatron/version.rb
         
     | 
| 
       90 
111 
     | 
    
         
             
            - lib/normatron/extensions/active_record.rb
         
     | 
| 
       91 
112 
     | 
    
         
             
            - lib/normatron.rb
         
     | 
| 
       92 
113 
     | 
    
         
             
            - MIT-LICENSE
         
     | 
| 
       93 
114 
     | 
    
         
             
            - Rakefile
         
     | 
| 
       94 
115 
     | 
    
         
             
            - README.textile
         
     | 
| 
       95 
116 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       96 
     | 
    
         
            -
            - spec/support/ 
     | 
| 
       97 
     | 
    
         
            -
            - spec/support/ 
     | 
| 
       98 
     | 
    
         
            -
            - spec/filters_spec.rb
         
     | 
| 
      
 117 
     | 
    
         
            +
            - spec/support/user_model.rb
         
     | 
| 
      
 118 
     | 
    
         
            +
            - spec/support/my_filters.rb
         
     | 
| 
       99 
119 
     | 
    
         
             
            - spec/normatron_spec.rb
         
     | 
| 
       100 
     | 
    
         
            -
            - spec/ 
     | 
| 
       101 
     | 
    
         
            -
            - spec/ 
     | 
| 
      
 120 
     | 
    
         
            +
            - spec/normatron/filters/downcase_filter_spec.rb
         
     | 
| 
      
 121 
     | 
    
         
            +
            - spec/normatron/filters/dump_filter_spec.rb
         
     | 
| 
      
 122 
     | 
    
         
            +
            - spec/normatron/filters/camelize_filter_spec.rb
         
     | 
| 
      
 123 
     | 
    
         
            +
            - spec/normatron/filters/chomp_filter_spec.rb
         
     | 
| 
      
 124 
     | 
    
         
            +
            - spec/normatron/filters/capitalize_filter_spec.rb
         
     | 
| 
      
 125 
     | 
    
         
            +
            - spec/normatron/filters/upcase_filter_spec.rb
         
     | 
| 
      
 126 
     | 
    
         
            +
            - spec/normatron/filters/strip_filter_spec.rb
         
     | 
| 
      
 127 
     | 
    
         
            +
            - spec/normatron/filters/underscore_filter_spec.rb
         
     | 
| 
      
 128 
     | 
    
         
            +
            - spec/normatron/filters/keep_filter_spec.rb
         
     | 
| 
      
 129 
     | 
    
         
            +
            - spec/normatron/filters/squish_filter_spec.rb
         
     | 
| 
      
 130 
     | 
    
         
            +
            - spec/normatron/filters/remove_filter_spec.rb
         
     | 
| 
      
 131 
     | 
    
         
            +
            - spec/normatron/filters/blank_filter_spec.rb
         
     | 
| 
      
 132 
     | 
    
         
            +
            - spec/normatron/filters/squeeze_filter_spec.rb
         
     | 
| 
      
 133 
     | 
    
         
            +
            - spec/normatron/filters/swapcase_filter_spec.rb
         
     | 
| 
      
 134 
     | 
    
         
            +
            - spec/normatron/filters/dasherize_filter_spec.rb
         
     | 
| 
      
 135 
     | 
    
         
            +
            - spec/normatron/filters/titleize_filter_spec.rb
         
     | 
| 
      
 136 
     | 
    
         
            +
            - spec/normatron/configuration_spec.rb
         
     | 
| 
      
 137 
     | 
    
         
            +
            - spec/normatron/extensions/active_record_spec.rb
         
     | 
| 
       102 
138 
     | 
    
         
             
            homepage: https://github.com/fernandors87/normatron
         
     | 
| 
       103 
139 
     | 
    
         
             
            licenses: []
         
     | 
| 
       104 
140 
     | 
    
         
             
            post_install_message: 
         
     | 
| 
         @@ -125,10 +161,25 @@ specification_version: 3 
     | 
|
| 
       125 
161 
     | 
    
         
             
            summary: Normalize attributes for ActiveRecord objects.
         
     | 
| 
       126 
162 
     | 
    
         
             
            test_files:
         
     | 
| 
       127 
163 
     | 
    
         
             
            - spec/spec_helper.rb
         
     | 
| 
       128 
     | 
    
         
            -
            - spec/support/ 
     | 
| 
       129 
     | 
    
         
            -
            - spec/support/ 
     | 
| 
       130 
     | 
    
         
            -
            - spec/filters_spec.rb
         
     | 
| 
      
 164 
     | 
    
         
            +
            - spec/support/user_model.rb
         
     | 
| 
      
 165 
     | 
    
         
            +
            - spec/support/my_filters.rb
         
     | 
| 
       131 
166 
     | 
    
         
             
            - spec/normatron_spec.rb
         
     | 
| 
       132 
     | 
    
         
            -
            - spec/ 
     | 
| 
       133 
     | 
    
         
            -
            - spec/ 
     | 
| 
      
 167 
     | 
    
         
            +
            - spec/normatron/filters/downcase_filter_spec.rb
         
     | 
| 
      
 168 
     | 
    
         
            +
            - spec/normatron/filters/dump_filter_spec.rb
         
     | 
| 
      
 169 
     | 
    
         
            +
            - spec/normatron/filters/camelize_filter_spec.rb
         
     | 
| 
      
 170 
     | 
    
         
            +
            - spec/normatron/filters/chomp_filter_spec.rb
         
     | 
| 
      
 171 
     | 
    
         
            +
            - spec/normatron/filters/capitalize_filter_spec.rb
         
     | 
| 
      
 172 
     | 
    
         
            +
            - spec/normatron/filters/upcase_filter_spec.rb
         
     | 
| 
      
 173 
     | 
    
         
            +
            - spec/normatron/filters/strip_filter_spec.rb
         
     | 
| 
      
 174 
     | 
    
         
            +
            - spec/normatron/filters/underscore_filter_spec.rb
         
     | 
| 
      
 175 
     | 
    
         
            +
            - spec/normatron/filters/keep_filter_spec.rb
         
     | 
| 
      
 176 
     | 
    
         
            +
            - spec/normatron/filters/squish_filter_spec.rb
         
     | 
| 
      
 177 
     | 
    
         
            +
            - spec/normatron/filters/remove_filter_spec.rb
         
     | 
| 
      
 178 
     | 
    
         
            +
            - spec/normatron/filters/blank_filter_spec.rb
         
     | 
| 
      
 179 
     | 
    
         
            +
            - spec/normatron/filters/squeeze_filter_spec.rb
         
     | 
| 
      
 180 
     | 
    
         
            +
            - spec/normatron/filters/swapcase_filter_spec.rb
         
     | 
| 
      
 181 
     | 
    
         
            +
            - spec/normatron/filters/dasherize_filter_spec.rb
         
     | 
| 
      
 182 
     | 
    
         
            +
            - spec/normatron/filters/titleize_filter_spec.rb
         
     | 
| 
      
 183 
     | 
    
         
            +
            - spec/normatron/configuration_spec.rb
         
     | 
| 
      
 184 
     | 
    
         
            +
            - spec/normatron/extensions/active_record_spec.rb
         
     | 
| 
       134 
185 
     | 
    
         
             
            has_rdoc: 
         
     |