Index: chrome/test/webdriver/commands/webelement_commands.cc |
diff --git a/chrome/test/webdriver/commands/webelement_commands.cc b/chrome/test/webdriver/commands/webelement_commands.cc |
index 561bd5303764624a9103eca125c58416985e9a32..c76c66b6e7e7a2b0fed7e4dae7bcc8b5e30da3cc 100644 |
--- a/chrome/test/webdriver/commands/webelement_commands.cc |
+++ b/chrome/test/webdriver/commands/webelement_commands.cc |
@@ -334,24 +334,19 @@ bool ElementSelectedCommand::DoesPost() { |
} |
void ElementSelectedCommand::ExecuteGet(Response* const response) { |
- ListValue args; |
- args.Append(element.ToValue()); |
- |
- std::string script = base::StringPrintf( |
- "return (%s).apply(null, arguments);", atoms::IS_SELECTED); |
- |
- Value* result = NULL; |
- Error* error = session_->ExecuteScript(script, &args, &result); |
+ bool is_selected; |
+ Error* error = session_->IsOptionElementSelected( |
+ session_->current_target(), element, &is_selected); |
if (error) { |
response->SetError(error); |
return; |
} |
- response->SetValue(result); |
+ response->SetValue(Value::CreateBooleanValue(is_selected)); |
} |
void ElementSelectedCommand::ExecutePost(Response* const response) { |
- Error* error = session_->SelectOptionElement( |
- session_->current_target(), element); |
+ Error* error = session_->SetOptionElementSelected( |
+ session_->current_target(), element, true); |
if (error) { |
response->SetError(error); |
return; |