| Index: chrome/test/chromedriver/session_unittest.cc
|
| diff --git a/chrome/test/chromedriver/session_unittest.cc b/chrome/test/chromedriver/session_unittest.cc
|
| index 8d2e2287604eab39435ebe66e63b2a17fa76be3f..0fd9a04d2a4ebd03d300d1d322322553be015329 100644
|
| --- a/chrome/test/chromedriver/session_unittest.cc
|
| +++ b/chrome/test/chromedriver/session_unittest.cc
|
| @@ -8,8 +8,32 @@
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/synchronization/lock.h"
|
| #include "chrome/test/chromedriver/session.h"
|
| +#include "chrome/test/chromedriver/status.h"
|
| +#include "chrome/test/chromedriver/stub_chrome.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| +namespace {
|
| +
|
| +class ValidFrameChrome : public StubChrome {
|
| + public:
|
| + ValidFrameChrome() {}
|
| + virtual ~ValidFrameChrome() {}
|
| +
|
| + virtual Status GetMainFrame(std::string* frame_id) OVERRIDE {
|
| + *frame_id = "main";
|
| + return Status(kOk);
|
| + }
|
| +
|
| + virtual Status WaitForPendingNavigations(
|
| + const std::string& frame_id) OVERRIDE {
|
| + if (frame_id == "")
|
| + return Status(kUnknownError, "frame_id was empty");
|
| + return Status(kOk);
|
| + }
|
| +};
|
| +
|
| +} // namespace
|
| +
|
| TEST(SessionAccessorTest, LocksSession) {
|
| scoped_ptr<Session> scoped_session(new Session("id"));
|
| Session* session = scoped_session.get();
|
| @@ -19,3 +43,22 @@ TEST(SessionAccessorTest, LocksSession) {
|
| ASSERT_EQ(session, accessor->Access(&lock));
|
| ASSERT_TRUE(lock.get());
|
| }
|
| +
|
| +TEST(Session, WaitForPendingNavigationsNoChrome) {
|
| + Session session("id");
|
| + ASSERT_TRUE(session.WaitForPendingNavigations().IsOk());
|
| +}
|
| +
|
| +TEST(Session, WaitForPendingNavigations) {
|
| + scoped_ptr<Chrome> chrome(new ValidFrameChrome());
|
| + Session session("id", chrome.Pass());
|
| + session.frame = "f";
|
| + ASSERT_TRUE(session.WaitForPendingNavigations().IsOk());
|
| +}
|
| +
|
| +TEST(Session, WaitForPendingNavigationsMainFrame) {
|
| + scoped_ptr<Chrome> chrome(new ValidFrameChrome());
|
| + Session session("id", chrome.Pass());
|
| + session.frame = "";
|
| + ASSERT_TRUE(session.WaitForPendingNavigations().IsOk());
|
| +}
|
|
|