format code

This commit is contained in:
Anton Maminov 2021-08-17 19:30:01 +03:00
parent 858a999ed2
commit 9478bffdf1
29 changed files with 153 additions and 158 deletions

View File

@ -6,12 +6,11 @@ WebMock.stub(:get, "example.com/cookies2").to_return(headers: {"Set-Cookie" => "
WebMock.stub(:get, "example.com/cookies3").to_return(headers: {"Set-Cookie" => "id=456"}) WebMock.stub(:get, "example.com/cookies3").to_return(headers: {"Set-Cookie" => "id=456"})
WebMock.stub(:get, "example.com/secure_cookies").to_return(headers: {"Set-Cookie" => "id=123; Secure"}) WebMock.stub(:get, "example.com/secure_cookies").to_return(headers: {"Set-Cookie" => "id=123; Secure"})
WebMock.stub(:get, "example.com/paths").to_return(headers: {"Set-Cookie" => "id=123; Path=/paths"}) WebMock.stub(:get, "example.com/paths").to_return(headers: {"Set-Cookie" => "id=123; Path=/paths"})
WebMock.stub(:get, "example.com/paths/hoge").to_return() WebMock.stub(:get, "example.com/paths/hoge").to_return
WebMock.stub(:get, "https://example.com/").to_return() WebMock.stub(:get, "https://example.com/").to_return
WebMock.stub(:get, "example.com/hoge/paths").to_return() WebMock.stub(:get, "example.com/hoge/paths").to_return
WebMock.stub(:get, "www.example.com").to_return() WebMock.stub(:get, "www.example.com").to_return
WebMock.stub(:get, "example.com/meta_cookie").to_return(body: WebMock.stub(:get, "example.com/meta_cookie").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/button").to_return(body: WebMock.stub(:get, "example.com/form/button").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/check_box").to_return(body: WebMock.stub(:get, "example.com/form/check_box").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/fields").to_return(body: WebMock.stub(:get, "example.com/form/fields").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/multi_select_list").to_return(body: WebMock.stub(:get, "example.com/form/multi_select_list").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/multi_select_list").to_return(body: WebMock.stub(:get, "example.com/form/multi_select_list").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper.cr" require "../spec_helper.cr"
WebMock.stub(:get, "example.com/form/radio_button").to_return(body: WebMock.stub(:get, "example.com/form/radio_button").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/select_list").to_return(body: WebMock.stub(:get, "example.com/form/select_list").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "../spec_helper" require "../spec_helper"
WebMock.stub(:get, "example.com/form/textarea").to_return(body: WebMock.stub(:get, "example.com/form/textarea").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,7 +1,6 @@
require "./spec_helper" require "./spec_helper"
WebMock.stub(:get, "example.com/check_form").to_return(body: WebMock.stub(:get, "example.com/check_form").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>

View File

@ -1,8 +1,8 @@
require "./spec_helper" require "./spec_helper"
WebMock.stub(:get, "http://example.com/?foo=bar&foo1=bar2") WebMock.stub(:get, "http://example.com/?foo=bar&foo1=bar2")
WebMock.stub(:post, "http://example.com/post"). WebMock.stub(:post, "http://example.com/post")
with(body: "email=foobar", headers: {"Content-Type" => "application/x-www-form-urlencoded"}). .with(body: "email=foobar", headers: {"Content-Type" => "application/x-www-form-urlencoded"})
to_return(body: "success") .to_return(body: "success")
WebMock.stub(:get, "example.com/%E3%81%82%E3%81%82%E3%81%82") WebMock.stub(:get, "example.com/%E3%81%82%E3%81%82%E3%81%82")
describe "Mechanize HTTP test" do describe "Mechanize HTTP test" do

View File

@ -2,14 +2,12 @@ require "spec"
require "webmock" require "webmock"
require "../src/mechanize" require "../src/mechanize"
WebMock.stub(:get, "example.com") WebMock.stub(:get, "example.com")
WebMock.stub(:get, "fail_example.com").to_return(status: 500) WebMock.stub(:get, "fail_example.com").to_return(status: 500)
WebMock.stub(:get, "body_example.com").to_return(body: "hello") WebMock.stub(:get, "body_example.com").to_return(body: "hello")
WebMock.stub(:get, "another_domain.com/") WebMock.stub(:get, "another_domain.com/")
WebMock.stub(:get, "example.com/form").to_return(body: WebMock.stub(:get, "example.com/form").to_return(body: <<-BODY
<<-BODY
<html> <html>
<head> <head>
<title>page_title</title> <title>page_title</title>
@ -24,10 +22,10 @@ WebMock.stub(:get, "example.com/form").to_return(body:
</html> </html>
BODY BODY
) )
WebMock.stub(:post, "example.com/post_path"). WebMock.stub(:post, "example.com/post_path")
with(body: "name=foo&email=bar", headers: {"Content-Type" => "application/x-www-form-urlencoded"}). .with(body: "name=foo&email=bar", headers: {"Content-Type" => "application/x-www-form-urlencoded"})
to_return(body: "success") .to_return(body: "success")
WebMock.stub(:post, "example.com/post_path"). WebMock.stub(:post, "example.com/post_path")
with(body: "name=foo&email=bar&commit=submit", headers: {"Content-Type" => "application/x-www-form-urlencoded"}). .with(body: "name=foo&email=bar&commit=submit", headers: {"Content-Type" => "application/x-www-form-urlencoded"})
to_return(body: "success with button") .to_return(body: "success with button")

View File

@ -10,7 +10,8 @@ class Mechanize
AGENT = { AGENT = {
"Mechanize" => "Mechanize/#{VERSION} Crystal/#{Crystal::VERSION} (https://github.com/Kanezoh/mechanize.cr)", "Mechanize" => "Mechanize/#{VERSION} Crystal/#{Crystal::VERSION} (https://github.com/Kanezoh/mechanize.cr)",
} }
def initialize()
def initialize
@agent = MechanizeCr::HTTP::Agent.new @agent = MechanizeCr::HTTP::Agent.new
@agent.context = self @agent.context = self
@agent.user_agent = AGENT["Mechanize"] @agent.user_agent = AGENT["Mechanize"]

View File

@ -6,6 +6,7 @@
# this property is used to send cookies to same origin resource. # this property is used to send cookies to same origin resource.
class ::HTTP::Cookie class ::HTTP::Cookie
property origin : String? property origin : String?
def initialize(name : String, value : String, @path : String? = nil, def initialize(name : String, value : String, @path : String? = nil,
@expires : Time? = nil, @domain : String? = nil, @expires : Time? = nil, @domain : String? = nil,
@secure : Bool = false, @http_only : Bool = false, @secure : Bool = false, @http_only : Bool = false,
@ -30,7 +31,7 @@ class ::HTTP::Cookie
end end
if domain if domain
host.try &.=~(/.*#{domain.try &.gsub(".", "\.")}$/) host.try &.=~(/.*#{domain.try &.gsub(".", ".")}$/)
else else
origin == host origin == host
end end

View File

@ -1,4 +1,5 @@
require "./base_error" require "./base_error"
class MechanizeCr::ElementNotFoundError < MechanizeCr::Error class MechanizeCr::ElementNotFoundError < MechanizeCr::Error
getter element : Symbol getter element : Symbol
getter conditions : String getter conditions : String
@ -9,5 +10,4 @@ class MechanizeCr::ElementNotFoundError < MechanizeCr::Error
super "Element #{element} with conditions #{conditions} was not found" super "Element #{element} with conditions #{conditions} was not found"
end end
end end

View File

@ -1,7 +1,9 @@
require "http/client" require "http/client"
class MechanizeCr::File class MechanizeCr::File
# property :body, :filename # property :body, :filename
property :body, :code, uri, :response property :body, :code, uri, :response
def initialize(uri : URI, response : ::HTTP::Client::Response, body : String, code : Int32) def initialize(uri : URI, response : ::HTTP::Client::Response, body : String, code : Int32)
@uri = uri @uri = uri
@body = body @body = body

View File

@ -1,10 +1,12 @@
class MechanizeCr::FormContent::Button < MechanizeCr::FormContent::Field class MechanizeCr::FormContent::Button < MechanizeCr::FormContent::Field
getter form_node : Node | Lexbor::Node getter form_node : Node | Lexbor::Node
def initialize(node : Node | Lexbor::Node, form_node : Node | Lexbor::Node, value = nil) def initialize(node : Node | Lexbor::Node, form_node : Node | Lexbor::Node, value = nil)
@form_node = form_node @form_node = form_node
super(node, value) super(node, value)
end end
end end
require "./reset_button" require "./reset_button"
require "./submit_button" require "./submit_button"
require "./image_button" require "./image_button"

View File

@ -2,6 +2,7 @@ class MechanizeCr::FormContent::CheckBox < MechanizeCr::FormContent::RadioButton
def check def check
@checked = true @checked = true
end end
def query_value def query_value
[@name, @value || "on"] [@name, @value || "on"]
end end

View File

@ -30,7 +30,7 @@ class MechanizeCr::FormContent::Field
def inspect # :nodoc: def inspect # :nodoc:
"[%s:0x%x type: %s name: %s value: %s]" % [ "[%s:0x%x type: %s name: %s value: %s]" % [
self.class.name.sub(/MechanizeCr::FormContent::/, "").downcase, self.class.name.sub(/MechanizeCr::FormContent::/, "").downcase,
object_id, type, name, value object_id, type, name, value,
] ]
end end
end end

View File

@ -55,7 +55,7 @@ class MechanizeCr::FormContent::MultiSelectList
def inspect # :nodoc: def inspect # :nodoc:
"[%s:0x%x type: %s name: %s values: [%s]]" % [ "[%s:0x%x type: %s name: %s values: [%s]]" % [
self.class.name.sub(/MechanizeCr::FormContent::/, "").downcase, self.class.name.sub(/MechanizeCr::FormContent::/, "").downcase,
object_id, type, name, values.join(',') object_id, type, name, values.join(','),
] ]
end end
end end

View File

@ -51,7 +51,6 @@ class MechanizeCr::FormContent::RadioButton < MechanizeCr::FormContent::Field
# #
# alias eql? == # :nodoc: # alias eql? == # :nodoc:
private def uncheck_peers private def uncheck_peers
form.radiobuttons_with(name).try &.each do |b| form.radiobuttons_with(name).try &.each do |b|
next if b.value == value next if b.value == value

View File

@ -2,6 +2,7 @@ require "./page"
class MechanizeCr::History < Array(MechanizeCr::Page) class MechanizeCr::History < Array(MechanizeCr::Page)
property max_size : Int32 property max_size : Int32
def initialize(max_size = 100) def initialize(max_size = 100)
@max_size = max_size @max_size = max_size
super super

View File

@ -52,7 +52,7 @@ module MechanizeCr
def http_request(uri, method, params) def http_request(uri, method, params)
case uri.scheme.not_nil!.downcase case uri.scheme.not_nil!.downcase
when "http", "https" then when "http", "https"
case method case method
when :get when :get
::HTTP::Client.get(uri, headers: request_headers) ::HTTP::Client.get(uri, headers: request_headers)