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.
Files changed (42) hide show
  1. data/CHANGES +159 -129
  2. data/LICENSE +21 -21
  3. data/README +75 -75
  4. data/Rakefile +161 -159
  5. data/bin/cerberus +2 -2
  6. data/lib/cerberus/builder/maven2.rb +38 -38
  7. data/lib/cerberus/builder/rake.rb +7 -7
  8. data/lib/cerberus/builder/rant.rb +7 -7
  9. data/lib/cerberus/builder/rspec.rb +13 -0
  10. data/lib/cerberus/builder/ruby_base.rb +48 -47
  11. data/lib/cerberus/cli.rb +73 -70
  12. data/lib/cerberus/component_lazy_loader.rb +2 -0
  13. data/lib/cerberus/config.example.yml +28 -28
  14. data/lib/cerberus/config.rb +47 -46
  15. data/lib/cerberus/constants.rb +8 -8
  16. data/lib/cerberus/latch.rb +26 -26
  17. data/lib/cerberus/manager.rb +296 -267
  18. data/lib/cerberus/publisher/base.rb +47 -47
  19. data/lib/cerberus/publisher/gmailer.rb +17 -0
  20. data/lib/cerberus/publisher/irc.rb +27 -27
  21. data/lib/cerberus/publisher/jabber.rb +25 -25
  22. data/lib/cerberus/publisher/mail.rb +36 -36
  23. data/lib/cerberus/publisher/netsmtp_tls_fix.rb +66 -66
  24. data/lib/cerberus/publisher/rss.rb +27 -28
  25. data/lib/cerberus/scm/cvs.rb +48 -48
  26. data/lib/cerberus/scm/darcs.rb +70 -70
  27. data/lib/cerberus/scm/svn.rb +83 -83
  28. data/lib/cerberus/utils.rb +156 -156
  29. data/test/config_test.rb +45 -45
  30. data/test/functional_test.rb +288 -287
  31. data/test/integration_test.rb +104 -104
  32. data/test/irc_publisher_test.rb +18 -18
  33. data/test/jabber_publisher_test.rb +21 -21
  34. data/test/mail_publisher_test.rb +25 -25
  35. data/test/maven2_builer_test.rb +81 -81
  36. data/test/mock/irc.rb +20 -20
  37. data/test/mock/manager.rb +10 -10
  38. data/test/mock/xmpp4r.rb +19 -19
  39. data/test/rss_publisher_test.rb +21 -21
  40. data/test/test_helper.rb +105 -105
  41. metadata +58 -40
  42. 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