sortah 0.5.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/.gitignore +8 -0
- data/.rvmrc +2 -0
- data/.travis.yml +3 -0
- data/CONTRIBUTION.md +23 -0
- data/FUTURE_PLANS.md +73 -0
- data/Gemfile +10 -0
- data/KNOWN_BUGS.md +12 -0
- data/LICENSE +27 -0
- data/README.md +216 -0
- data/Rakefile +14 -0
- data/TUTORIAL.md +43 -0
- data/bin/sortah +33 -0
- data/lib/sortah.rb +10 -0
- data/lib/sortah/cleanroom.rb +47 -0
- data/lib/sortah/components.rb +3 -0
- data/lib/sortah/components/destination.rb +41 -0
- data/lib/sortah/components/lens.rb +49 -0
- data/lib/sortah/components/router.rb +13 -0
- data/lib/sortah/email.rb +31 -0
- data/lib/sortah/errors.rb +15 -0
- data/lib/sortah/handler.rb +46 -0
- data/lib/sortah/parser.rb +57 -0
- data/lib/sortah/patches.rb +7 -0
- data/lib/sortah/util/component.rb +28 -0
- data/lib/sortah/util/component_collection.rb +22 -0
- data/lib/sortah/version.rb +3 -0
- data/sortah.gemspec +31 -0
- data/spec/bin_spec.rb +54 -0
- data/spec/destination_spec.rb +42 -0
- data/spec/email_spec.rb +13 -0
- data/spec/fixtures/rc +8 -0
- data/spec/parser_spec.rb +270 -0
- data/spec/semantic_spec.rb +310 -0
- data/spec/sortah_handler_spec.rb +21 -0
- data/spec/spec_helper.rb +3 -0
- metadata +117 -0
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Sortah::Handler do
|
4
|
+
context "when building the handler" do
|
5
|
+
before :all do
|
6
|
+
end
|
7
|
+
|
8
|
+
it "should ask for the parsed content" do
|
9
|
+
context = mock(:context)
|
10
|
+
context.should_receive(:destinations).and_return(instance_of(Sortah::Destinations))
|
11
|
+
context.should_receive(:lenses).and_return(instance_of(Sortah::Lenses))
|
12
|
+
context.should_receive(:routers).and_return(instance_of(Sortah::Routers))
|
13
|
+
context.should_receive(:maildir).and_return(instance_of(String))
|
14
|
+
|
15
|
+
Sortah::Handler.build_from(context)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
|
20
|
+
end
|
21
|
+
|
data/spec/spec_helper.rb
ADDED
metadata
ADDED
@@ -0,0 +1,117 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sortah
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.5.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Joe Fredette
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2011-10-25 00:00:00.000000000Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: mail
|
16
|
+
requirement: &2153551920 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *2153551920
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: trollop
|
27
|
+
requirement: &2153551480 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ! '>='
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: '0'
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *2153551480
|
36
|
+
description: ! "\n Sortah provides a simple, declarative internal DSL for sorting
|
37
|
+
\n your email. It provides an executable which may serve as an external\n mail
|
38
|
+
delivery agent for such programs as `getmail`. Finally, since\n your sorting
|
39
|
+
logic is just Plain Old Ruby Code (PORC, as I like to call it).\n You have access
|
40
|
+
to 100% of ruby as needed, including all of it's \n object oriented goodness,
|
41
|
+
it's wonderful community of gems, and it's \n powerful metaprogramming ability.\n
|
42
|
+
\ "
|
43
|
+
email:
|
44
|
+
- jfredett@gmail.com
|
45
|
+
executables:
|
46
|
+
- sortah
|
47
|
+
extensions: []
|
48
|
+
extra_rdoc_files: []
|
49
|
+
files:
|
50
|
+
- .gitignore
|
51
|
+
- .rvmrc
|
52
|
+
- .travis.yml
|
53
|
+
- CONTRIBUTION.md
|
54
|
+
- FUTURE_PLANS.md
|
55
|
+
- Gemfile
|
56
|
+
- KNOWN_BUGS.md
|
57
|
+
- LICENSE
|
58
|
+
- README.md
|
59
|
+
- Rakefile
|
60
|
+
- TUTORIAL.md
|
61
|
+
- bin/sortah
|
62
|
+
- lib/sortah.rb
|
63
|
+
- lib/sortah/cleanroom.rb
|
64
|
+
- lib/sortah/components.rb
|
65
|
+
- lib/sortah/components/destination.rb
|
66
|
+
- lib/sortah/components/lens.rb
|
67
|
+
- lib/sortah/components/router.rb
|
68
|
+
- lib/sortah/email.rb
|
69
|
+
- lib/sortah/errors.rb
|
70
|
+
- lib/sortah/handler.rb
|
71
|
+
- lib/sortah/parser.rb
|
72
|
+
- lib/sortah/patches.rb
|
73
|
+
- lib/sortah/util/component.rb
|
74
|
+
- lib/sortah/util/component_collection.rb
|
75
|
+
- lib/sortah/version.rb
|
76
|
+
- sortah.gemspec
|
77
|
+
- spec/bin_spec.rb
|
78
|
+
- spec/destination_spec.rb
|
79
|
+
- spec/email_spec.rb
|
80
|
+
- spec/fixtures/rc
|
81
|
+
- spec/parser_spec.rb
|
82
|
+
- spec/semantic_spec.rb
|
83
|
+
- spec/sortah_handler_spec.rb
|
84
|
+
- spec/spec_helper.rb
|
85
|
+
homepage: http://www.github.com/jfredett/sortah
|
86
|
+
licenses: []
|
87
|
+
post_install_message:
|
88
|
+
rdoc_options: []
|
89
|
+
require_paths:
|
90
|
+
- lib
|
91
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
92
|
+
none: false
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
99
|
+
requirements:
|
100
|
+
- - ! '>='
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0'
|
103
|
+
requirements: []
|
104
|
+
rubyforge_project: sortah
|
105
|
+
rubygems_version: 1.8.11
|
106
|
+
signing_key:
|
107
|
+
specification_version: 3
|
108
|
+
summary: For sortin' your email
|
109
|
+
test_files:
|
110
|
+
- spec/bin_spec.rb
|
111
|
+
- spec/destination_spec.rb
|
112
|
+
- spec/email_spec.rb
|
113
|
+
- spec/fixtures/rc
|
114
|
+
- spec/parser_spec.rb
|
115
|
+
- spec/semantic_spec.rb
|
116
|
+
- spec/sortah_handler_spec.rb
|
117
|
+
- spec/spec_helper.rb
|