seleniumを起動
java -jar /path/to/selenium-server-standalone-2.39.0.jar -role hub
phantomjsを起動
phantomjs --webdriver=8080 --webdriver-selenium-grid-hub=http://127.0.0.1:4444
seleniumを起動
java -jar /path/to/selenium-server-standalone-2.39.0.jar -role hub
phantomjsを起動
phantomjs --webdriver=8080 --webdriver-selenium-grid-hub=http://127.0.0.1:4444
Handler handler = new StreamHandler(){ | |
//初期化ブロック | |
{ | |
setOutputStream(System.out); | |
setLevel(Level.ALL); | |
} | |
@Override | |
public void publish(LogRecord record){ | |
super.publish(record); |
//POSTを投げる側のコード | |
HttpClient httpClient = HttpClientBuilder.create().build(); | |
HttpPost httpPost = new HttpPost("http://127.0.0.1:8080/test/post"); | |
MultipartEntityBuilder params = MultipartEntityBuilder.create(); | |
params.setMode(HttpMultipartMode.BROWSER_COMPATIBLE); | |
//ContentTypeをセットしないと文字化けします | |
params.addTextBody("text", "マルチバイトテキスト", ContentType.create("text/plain", MIME.UTF8_CHARSET)); |
const obj = { | |
foobar: function(){} | |
} | |
obj.foobar.toString() == (function(){}).toString() //false | |
obj.foobar.toString() == (function foobar(){}).toString() //true | |
obj.foobar.toString() //function foobar() {} |
Both getAttribute
and isSelected
are asynchronous methods, so my solution has become such complicated. Does anyone know a simpler solution?
# app/validators/array_length_validator.rb | |
class ArrayLengthValidator < ActiveModel::Validations::LengthValidator | |
def initialize(options) | |
ActiveModel::Validations::LengthValidator::MESSAGES.each do |key, value| | |
options[value] = I18n.t("errors.messages.array_#{value}") | |
end | |
super(options) | |
end | |
end |
# app/models/forms/recruit.rb | |
class Forms::Recruit | |
include ActiveModel::Model | |
attr_accessor :job_types | |
validates :job_types, presence: true, white_list: {list: JOB_TYPES, allow_blank: true} | |
end |
<%# app/view/shared/_form.html.erb %> | |
<%= form_with model: record, url: url, local: true, class: 'px-4' do |form|%> | |
<% elements.each do |elem|%> | |
<div class="form-group form-row mb-5"> | |
<%= form.label elem.label, for: elem.id, class: 'col-md-3 col-lg-2 col-form-label'%> | |
<div class="col-md-9 col-lg-10"> | |
<% if elem.type?(:collection_radio_buttons, :collection_check_boxes) %> | |
<div> | |
<%= form.public_send elem.type, elem.name, *elem.args, include_hidden: false do |check|%> | |
<%= tag.div class: 'form-check form-check-inline', style: elem.style do%> |
# frozen_string_literal: true | |
## | |
# {ChainChecker} is used when you want to group multiple `expect`. | |
# You use it including in `RSpec::Matchers.define` block. | |
# | |
# RSpec::Matchers.define :have_foo_bar do |foo, bar| | |
# include ChainChecker | |
# end | |
# |