seojs 0.0.8 → 0.0.9

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1ad9b187fe3b62bee1d5100414497a191a87208b
4
- data.tar.gz: 85ee43ec276a28e5f45565ac327de2aff1003c27
3
+ metadata.gz: 6c6bac83d604b383b340e9eaffb46b25ee571c43
4
+ data.tar.gz: e8da2edcca89240184556617a5f490cbdeb614db
5
5
  SHA512:
6
- metadata.gz: cd35276ad55de901d5c39bbdc8e5f282bc3f835edde09b9e995da82f3d6d6679cccb67014065a490123ce154f2b9eca2ac4d8558929f74d1a2df2c063dcf47f0
7
- data.tar.gz: 7cd786888c498b7f1abd96e6288177aa95cab8b2872d55292cf96841748490363166b691edd569cc65a68568506aad5a5a88539d2ac85e4da2cf160b1aa174d5
6
+ metadata.gz: 252767b690f3a752694581401f3cfaa919375337660f8f44d7c87d13b06cb1d9dd5d295d5ed5deeedddf22c8c155a94256143834b28d405956c914cc803863d7
7
+ data.tar.gz: 0d2f19cc4fa4ed2935452ee490ca70c5dfbdd4c3bddfab74ae112defd2c24de7e1a559210af56d7082a09f53c93292e49c8a7342583391d49fc94cac171871c4
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.8
1
+ 0.0.9
@@ -12,7 +12,7 @@ module Seojs
12
12
  @env = env
13
13
 
14
14
  if test?
15
- return [ 200, {"Content-Type" => "text/html"}, 'SEO.js Middleware Found!' ]
15
+ return [ 200, {"Content-Type" => "text/html"}, ['SEO.js Middleware Found!'] ]
16
16
  elsif Seojs.url && escaped_fragment_query?
17
17
  triplet = get_snapshot
18
18
  return triplet if triplet
@@ -42,6 +42,7 @@ module Seojs
42
42
  v = headers[k]
43
43
  headers[k] = v.join(', ') if v.kind_of? Array
44
44
  end
45
+ headers.delete("status") if headers.key?("status")
45
46
  [snapshot_response.code, headers, body]
46
47
  else
47
48
  nil
@@ -73,7 +74,7 @@ module Seojs
73
74
  end.map do |k, v|
74
75
  [reconstruct_header_name(k), v]
75
76
  end.select do |k,v|
76
- ["IF-NONE-MATCH", "IF-MODIFIED-SINCE", "CACHE-CONTROL"].include? k
77
+ ["IF-NONE-MATCH", "IF-MODIFIED-SINCE", "CACHE-CONTROL", "USER-AGENT"].include? k
77
78
  end
78
79
  Hash[headers]
79
80
  end
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "seojs"
8
- s.version = "0.0.8"
8
+ s.version = "0.0.9"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["getseojs.com"]
12
- s.date = "2013-10-11"
12
+ s.date = "2013-10-16"
13
13
  s.description = "SEO.js makes your BackboneJS, AngularJS or EmberJS apps crawlable by Google to make them appear in search results."
14
14
  s.email = "hello@getseojs.com"
15
15
  s.extra_rdoc_files = [
@@ -81,6 +81,21 @@ class TestMiddleware < Test::Unit::TestCase
81
81
  assert_equal 'Snapshot!', last_response.body
82
82
  end
83
83
 
84
+ def test_forward_user_agent
85
+ Seojs.token = 'token'
86
+ request = {}
87
+ request.expects(:[]=).with('USER-AGENT', 'Googlebot')
88
+ Net::HTTP::Get.expects(:new)
89
+ .with(equals("http://cdn.getseojs.com/snapshots/token/v3/http://example.org:80/hi?_escaped_fragment_="))
90
+ .returns(request)
91
+ Net::HTTP.expects(:start)
92
+ .returns(build_response('Snapshot!', 200, {'ETAG'=>'abc'}))
93
+ get '/hi', {:_escaped_fragment_ => ''}, {'HTTP_USER_AGENT' => 'Googlebot'}
94
+ assert_equal 'abc', last_response.headers['ETAG']
95
+ assert last_response.ok?
96
+ assert_equal 'Snapshot!', last_response.body
97
+ end
98
+
84
99
  def test_fallback_if_not_found
85
100
  Seojs.token = 'token'
86
101
  Net::HTTP::Get.expects(:new)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seojs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.8
4
+ version: 0.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - getseojs.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-10-11 00:00:00.000000000 Z
11
+ date: 2013-10-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: sinatra