K
Kannan Jay
I have the below code
response = Net::HTTP.start(url.host, url.port) do
|http|
http.request(request)
end
exp_code = 450
if(response.code.to_i != exp_code)
raise StandardError, "Expected #{exp_code} Received
#{response.code.to_i}"
end
exp_msg = 'Blocked By Parental Controls'
puts 'Received status msg: #{response.message}'
if(response.message != exp_msg)
raise StandardError, "Expected #{exp_msg} Received
#{response.message}"
end
The received response is
HTTP/1.1 450 Blocked By Parental Controls^M
Date: Mon, 12 Apr 2010 10:28:15 GMT^M
P3P: policyref="http://p3p.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR
ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi
PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"^M
cache-control: public,must-revalidate^M
Content-Length: 0^M
Connection: close^M
Content-Type: ^M
^M
The "puts" statement is printing
Received status msg: Blocked By Parental Controls
But the next statement for inequality check fails with
can't convert nil to string
However for a different case, where the response is
HTTP/1.1 200 OK^M
Date: Mon, 12 Apr 2010 10:28:29 GMT^M
P3P: policyref="http://p3p.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR
ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi
PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"^M
cache-control: public,must-revalidate^M
Content-Length: 0^M
Connection: close^M
Content-Type: ^M
^M
and I have the ruby code as:
exp_msg = 'OK'
puts 'Received status msg: #{response.message}'
if(response.message != exp_msg)
raise StandardError, "Expected #{exp_msg} Received
#{response.message}"
end
Here there is no nil problem.
I have been breaking my head and don't have the slightest clue what is
happening. Can somebody please shed some light?
response = Net::HTTP.start(url.host, url.port) do
|http|
http.request(request)
end
exp_code = 450
if(response.code.to_i != exp_code)
raise StandardError, "Expected #{exp_code} Received
#{response.code.to_i}"
end
exp_msg = 'Blocked By Parental Controls'
puts 'Received status msg: #{response.message}'
if(response.message != exp_msg)
raise StandardError, "Expected #{exp_msg} Received
#{response.message}"
end
The received response is
HTTP/1.1 450 Blocked By Parental Controls^M
Date: Mon, 12 Apr 2010 10:28:15 GMT^M
P3P: policyref="http://p3p.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR
ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi
PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"^M
cache-control: public,must-revalidate^M
Content-Length: 0^M
Connection: close^M
Content-Type: ^M
^M
The "puts" statement is printing
Received status msg: Blocked By Parental Controls
But the next statement for inequality check fails with
can't convert nil to string
However for a different case, where the response is
HTTP/1.1 200 OK^M
Date: Mon, 12 Apr 2010 10:28:29 GMT^M
P3P: policyref="http://p3p.yahoo.com/w3c/p3p.xml", CP="CAO DSP COR CUR
ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi
PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV"^M
cache-control: public,must-revalidate^M
Content-Length: 0^M
Connection: close^M
Content-Type: ^M
^M
and I have the ruby code as:
exp_msg = 'OK'
puts 'Received status msg: #{response.message}'
if(response.message != exp_msg)
raise StandardError, "Expected #{exp_msg} Received
#{response.message}"
end
Here there is no nil problem.
I have been breaking my head and don't have the slightest clue what is
happening. Can somebody please shed some light?