murlsh 0.2.1

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.
@@ -0,0 +1,139 @@
1
+ $:.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
2
+
3
+ require 'murlsh'
4
+
5
+ require 'test/unit'
6
+
7
+ class XhtmlResponseTest < Test::Unit::TestCase
8
+
9
+ Ie_ua = 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)'
10
+
11
+ Non_ie_ua = 'Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.10) Gecko/2009042523 Ubuntu/9.04 (jaunty) Firefox/3.0.10'
12
+
13
+ def get_content_type(accept, ua)
14
+ req = Murlsh::XhtmlResponse.new
15
+ req.set_content_type(accept, ua)
16
+ req['Content-Type']
17
+ end
18
+
19
+ def test_star_star
20
+ assert_equal('application/xhtml+xml',
21
+ get_content_type('*/*', Non_ie_ua))
22
+ end
23
+
24
+ def test_star_star_ie
25
+ assert_equal('text/html',
26
+ get_content_type('*/*', Ie_ua))
27
+ end
28
+
29
+ def test_star_star_empty
30
+ assert_equal('application/xhtml+xml',
31
+ get_content_type('*/*', ''))
32
+ end
33
+
34
+ def test_star_star_nil
35
+ assert_equal('application/xhtml+xml',
36
+ get_content_type('*/*', nil))
37
+ end
38
+
39
+ def test_application_star
40
+ assert_equal('application/xhtml+xml',
41
+ get_content_type('application/*', Non_ie_ua))
42
+ end
43
+
44
+ def test_application_star_ie
45
+ assert_equal('text/html',
46
+ get_content_type('application/*', Ie_ua))
47
+ end
48
+
49
+ def test_application_star_empty
50
+ assert_equal('application/xhtml+xml',
51
+ get_content_type('application/*', ''))
52
+ end
53
+
54
+ def test_application_star_nil
55
+ assert_equal('application/xhtml+xml',
56
+ get_content_type('application/*', nil))
57
+ end
58
+
59
+ def test_application_xhtml_xml
60
+ assert_equal('application/xhtml+xml',
61
+ get_content_type('application/xhtml+xml', Non_ie_ua))
62
+ end
63
+
64
+ def test_application_xhtml_xml_ie
65
+ assert_equal('text/html',
66
+ get_content_type('application/xhtml+xml', Ie_ua))
67
+ end
68
+
69
+ def test_application_xhtml_xml_empty
70
+ assert_equal('application/xhtml+xml',
71
+ get_content_type('application/xhtml+xml', ''))
72
+ end
73
+
74
+ def test_application_xhtml_xml_nil
75
+ assert_equal('application/xhtml+xml',
76
+ get_content_type('application/xhtml+xml', nil))
77
+ end
78
+
79
+ def test_text_html
80
+ assert_equal('text/html',
81
+ get_content_type('text/html', Non_ie_ua))
82
+ end
83
+
84
+ def test_text_html_ie
85
+ assert_equal('text/html',
86
+ get_content_type('text/html', Ie_ua))
87
+ end
88
+
89
+ def test_text_html_empty
90
+ assert_equal('text/html',
91
+ get_content_type('text/html', ''))
92
+ end
93
+
94
+ def test_text_html_nil
95
+ assert_equal('text/html',
96
+ get_content_type('text/html', nil))
97
+ end
98
+
99
+ def test_empty
100
+ assert_equal('text/html',
101
+ get_content_type('', Non_ie_ua))
102
+ end
103
+
104
+ def test_empty_ie
105
+ assert_equal('text/html',
106
+ get_content_type('', Ie_ua))
107
+ end
108
+
109
+ def test_empty_empty
110
+ assert_equal('text/html',
111
+ get_content_type('', ''))
112
+ end
113
+
114
+ def test_empty_nil
115
+ assert_equal('text/html',
116
+ get_content_type('', nil))
117
+ end
118
+
119
+ def test_nil
120
+ assert_equal('text/html',
121
+ get_content_type(nil, Non_ie_ua))
122
+ end
123
+
124
+ def test_nil_ie
125
+ assert_equal('text/html',
126
+ get_content_type(nil, Ie_ua))
127
+ end
128
+
129
+ def test_nil_empty
130
+ assert_equal('text/html',
131
+ get_content_type(nil, ''))
132
+ end
133
+
134
+ def test_nil_nil
135
+ assert_equal('text/html',
136
+ get_content_type(nil, nil))
137
+ end
138
+
139
+ end
metadata ADDED
@@ -0,0 +1,170 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: murlsh
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.1
5
+ platform: ruby
6
+ authors:
7
+ - Matthew M. Boedicker
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2009-10-23 00:00:00 -04:00
13
+ default_executable: murlsh
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: activerecord
17
+ type: :runtime
18
+ version_requirement:
19
+ version_requirements: !ruby/object:Gem::Requirement
20
+ requirements:
21
+ - - ">="
22
+ - !ruby/object:Gem::Version
23
+ version: 2.3.4
24
+ version:
25
+ - !ruby/object:Gem::Dependency
26
+ name: bcrypt
27
+ type: :runtime
28
+ version_requirement:
29
+ version_requirements: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 2.1.2
34
+ version:
35
+ - !ruby/object:Gem::Dependency
36
+ name: builder
37
+ type: :runtime
38
+ version_requirement:
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 2.1.2
44
+ version:
45
+ - !ruby/object:Gem::Dependency
46
+ name: hpricot
47
+ type: :runtime
48
+ version_requirement:
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 0.8.1
54
+ version:
55
+ - !ruby/object:Gem::Dependency
56
+ name: htmlentities
57
+ type: :runtime
58
+ version_requirement:
59
+ version_requirements: !ruby/object:Gem::Requirement
60
+ requirements:
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: 4.2.0
64
+ version:
65
+ - !ruby/object:Gem::Dependency
66
+ name: rack
67
+ type: :runtime
68
+ version_requirement:
69
+ version_requirements: !ruby/object:Gem::Requirement
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ version: 1.0.1
74
+ version:
75
+ - !ruby/object:Gem::Dependency
76
+ name: sqlite3
77
+ type: :runtime
78
+ version_requirement:
79
+ version_requirements: !ruby/object:Gem::Requirement
80
+ requirements:
81
+ - - ">="
82
+ - !ruby/object:Gem::Version
83
+ version: 1.2.5
84
+ version:
85
+ description: url sharing site framework with easy adding, title lookup, atom feed, thumbnails and embedding
86
+ email: matthewm@boedicker.org
87
+ executables:
88
+ - murlsh
89
+ extensions: []
90
+
91
+ extra_rdoc_files:
92
+ - README.textile
93
+ files:
94
+ - .gitignore
95
+ - .htaccess
96
+ - COPYING
97
+ - README.textile
98
+ - Rakefile
99
+ - VERSION
100
+ - bin/murlsh
101
+ - config.ru
102
+ - config.yaml
103
+ - lib/murlsh.rb
104
+ - lib/murlsh/atom_feed.rb
105
+ - lib/murlsh/auth.rb
106
+ - lib/murlsh/dispatch.rb
107
+ - lib/murlsh/get_content_type.rb
108
+ - lib/murlsh/get_title.rb
109
+ - lib/murlsh/markup.rb
110
+ - lib/murlsh/plugin.rb
111
+ - lib/murlsh/referrer.rb
112
+ - lib/murlsh/sqlite3_adapter.rb
113
+ - lib/murlsh/time.rb
114
+ - lib/murlsh/url.rb
115
+ - lib/murlsh/url_body.rb
116
+ - lib/murlsh/url_server.rb
117
+ - lib/murlsh/xhtml_response.rb
118
+ - murlsh.gemspec
119
+ - plugins/update_feed.rb
120
+ - public/css/jquery.jgrowl.css
121
+ - public/css/phone.css
122
+ - public/css/screen.css
123
+ - public/js/jquery-1.3.2.min.js
124
+ - public/js/jquery.cookie.js
125
+ - public/js/jquery.jgrowl_compressed.js
126
+ - public/js/js.js
127
+ - public/swf/player_mp3_mini.swf
128
+ - test/auth_test.rb
129
+ - test/get_charset_test.rb
130
+ - test/get_content_type_test.rb
131
+ - test/get_title_test.rb
132
+ - test/markup_test.rb
133
+ - test/referrer_test.rb
134
+ - test/xhtml_response_test.rb
135
+ has_rdoc: true
136
+ homepage: http://github.com/mmb/murlsh
137
+ licenses: []
138
+
139
+ post_install_message:
140
+ rdoc_options:
141
+ - --charset=UTF-8
142
+ require_paths:
143
+ - lib
144
+ required_ruby_version: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ version: "0"
149
+ version:
150
+ required_rubygems_version: !ruby/object:Gem::Requirement
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ version: "0"
155
+ version:
156
+ requirements: []
157
+
158
+ rubyforge_project:
159
+ rubygems_version: 1.3.5
160
+ signing_key:
161
+ specification_version: 3
162
+ summary: url sharing site framework
163
+ test_files:
164
+ - test/xhtml_response_test.rb
165
+ - test/markup_test.rb
166
+ - test/referrer_test.rb
167
+ - test/get_charset_test.rb
168
+ - test/get_content_type_test.rb
169
+ - test/auth_test.rb
170
+ - test/get_title_test.rb