cerberus 0.3.5 → 0.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGES +159 -129
- data/LICENSE +21 -21
- data/README +75 -75
- data/Rakefile +161 -159
- data/bin/cerberus +2 -2
- data/lib/cerberus/builder/maven2.rb +38 -38
- data/lib/cerberus/builder/rake.rb +7 -7
- data/lib/cerberus/builder/rant.rb +7 -7
- data/lib/cerberus/builder/rspec.rb +13 -0
- data/lib/cerberus/builder/ruby_base.rb +48 -47
- data/lib/cerberus/cli.rb +73 -70
- data/lib/cerberus/component_lazy_loader.rb +2 -0
- data/lib/cerberus/config.example.yml +28 -28
- data/lib/cerberus/config.rb +47 -46
- data/lib/cerberus/constants.rb +8 -8
- data/lib/cerberus/latch.rb +26 -26
- data/lib/cerberus/manager.rb +296 -267
- data/lib/cerberus/publisher/base.rb +47 -47
- data/lib/cerberus/publisher/gmailer.rb +17 -0
- data/lib/cerberus/publisher/irc.rb +27 -27
- data/lib/cerberus/publisher/jabber.rb +25 -25
- data/lib/cerberus/publisher/mail.rb +36 -36
- data/lib/cerberus/publisher/netsmtp_tls_fix.rb +66 -66
- data/lib/cerberus/publisher/rss.rb +27 -28
- data/lib/cerberus/scm/cvs.rb +48 -48
- data/lib/cerberus/scm/darcs.rb +70 -70
- data/lib/cerberus/scm/svn.rb +83 -83
- data/lib/cerberus/utils.rb +156 -156
- data/test/config_test.rb +45 -45
- data/test/functional_test.rb +288 -287
- data/test/integration_test.rb +104 -104
- data/test/irc_publisher_test.rb +18 -18
- data/test/jabber_publisher_test.rb +21 -21
- data/test/mail_publisher_test.rb +25 -25
- data/test/maven2_builer_test.rb +81 -81
- data/test/mock/irc.rb +20 -20
- data/test/mock/manager.rb +10 -10
- data/test/mock/xmpp4r.rb +19 -19
- data/test/rss_publisher_test.rb +21 -21
- data/test/test_helper.rb +105 -105
- metadata +58 -40
- data/lib/cerberus/helper/xchar.rb +0 -61
@@ -1,61 +0,0 @@
|
|
1
|
-
# http://www.intertwingly.net/blog/2005/09/28/XML-Cleansing
|
2
|
-
# Tests available at above
|
3
|
-
module XChar
|
4
|
-
# http://intertwingly.net/stories/2004/04/14/i18n.html#CleaningWindows
|
5
|
-
CP1252 = {
|
6
|
-
128 => 8364, # euro sign
|
7
|
-
130 => 8218, # single low-9 quotation mark
|
8
|
-
131 => 402, # latin small letter f with hook
|
9
|
-
132 => 8222, # double low-9 quotation mark
|
10
|
-
133 => 8230, # horizontal ellipsis
|
11
|
-
134 => 8224, # dagger
|
12
|
-
135 => 8225, # double dagger
|
13
|
-
136 => 710, # modifier letter circumflex accent
|
14
|
-
137 => 8240, # per mille sign
|
15
|
-
138 => 352, # latin capital letter s with caron
|
16
|
-
139 => 8249, # single left-pointing angle quotation mark
|
17
|
-
140 => 338, # latin capital ligature oe
|
18
|
-
142 => 381, # latin capital letter z with caron
|
19
|
-
145 => 8216, # left single quotation mark
|
20
|
-
146 => 8217, # right single quotation mark
|
21
|
-
147 => 8220, # left double quotation mark
|
22
|
-
148 => 8221, # right double quotation mark
|
23
|
-
149 => 8226, # bullet
|
24
|
-
150 => 8211, # en dash
|
25
|
-
151 => 8212, # em dash
|
26
|
-
152 => 732, # small tilde
|
27
|
-
153 => 8482, # trade mark sign
|
28
|
-
154 => 353, # latin small letter s with caron
|
29
|
-
155 => 8250, # single right-pointing angle quotation mark
|
30
|
-
156 => 339, # latin small ligature oe
|
31
|
-
158 => 382, # latin small letter z with caron
|
32
|
-
159 => 376} # latin capital letter y with diaeresis
|
33
|
-
|
34
|
-
# http://www.w3.org/TR/REC-xml/#dt-chardata
|
35
|
-
PREDEFINED = {
|
36
|
-
38 => '&', # ampersand
|
37
|
-
60 => '<', # left angle bracket
|
38
|
-
62 => '>'} # right angle bracket
|
39
|
-
|
40
|
-
# http://www.w3.org/TR/REC-xml/#charsets
|
41
|
-
VALID = [[0x9, 0xA, 0xD], (0x20..0xD7FF),
|
42
|
-
(0xE000..0xFFFD), (0x10000..0x10FFFF)]
|
43
|
-
end
|
44
|
-
|
45
|
-
class Fixnum
|
46
|
-
# xml escaped version of chr
|
47
|
-
def xchr
|
48
|
-
n = XChar::CP1252[self] || self
|
49
|
-
n = 42 unless XChar::VALID.find {|range| range.include? n}
|
50
|
-
XChar::PREDEFINED[n] or (n<128 ? n.chr : "&##{n};")
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
class String
|
55
|
-
# xml escaped version of to_s
|
56
|
-
def to_xs
|
57
|
-
unpack('U*').map {|n| n.xchr}.join # ASCII, UTF-8
|
58
|
-
rescue
|
59
|
-
unpack('C*').map {|n| n.xchr}.join # ISO-8859-1, WIN-1252
|
60
|
-
end
|
61
|
-
end
|