Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(137)

Side by Side Diff: chrome/test/chromedriver/session_unittest.cc

Issue 331943003: [ChromeDriver] Added CommandListener interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include <list> 5 #include <list>
6 #include <string> 6 #include <string>
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "chrome/test/chromedriver/chrome/status.h" 9 #include "chrome/test/chromedriver/chrome/status.h"
10 #include "chrome/test/chromedriver/chrome/stub_chrome.h" 10 #include "chrome/test/chromedriver/chrome/stub_chrome.h"
(...skipping 14 matching lines...) Expand all
25 *web_view = &web_view_; 25 *web_view = &web_view_;
26 return Status(kOk); 26 return Status(kOk);
27 } 27 }
28 return Status(kUnknownError); 28 return Status(kUnknownError);
29 } 29 }
30 30
31 private: 31 private:
32 StubWebView web_view_; 32 StubWebView web_view_;
33 }; 33 };
34 34
35 class MockCommandListener : public CommandListener {
stgao 2014/06/15 23:54:41 Duplicate code as the one in commands_unittest.cc
johnmoore 2014/06/16 17:28:34 Would it make sense for the stub class to perform
36 public:
37 MockCommandListener() : called_(false) {}
38 virtual ~MockCommandListener() {}
39
40 virtual Status OnCommand(const std::string& command_name) OVERRIDE {
41 called_ = true;
42 EXPECT_STREQ("cmd", command_name.c_str());
43 return Status(kOk);
44 }
45
46 void VerifyCalled() {
47 EXPECT_TRUE(called_);
48 }
49
50 void VerifyNotCalled() {
51 EXPECT_FALSE(called_);
52 }
53
54 private:
55 bool called_;
56 };
57
35 } // namespace 58 } // namespace
36 59
37 TEST(Session, GetTargetWindowNoChrome) { 60 TEST(Session, GetTargetWindowNoChrome) {
38 Session session("1"); 61 Session session("1");
39 WebView* web_view; 62 WebView* web_view;
40 ASSERT_EQ(kNoSuchWindow, session.GetTargetWindow(&web_view).code()); 63 ASSERT_EQ(kNoSuchWindow, session.GetTargetWindow(&web_view).code());
41 } 64 }
42 65
43 TEST(Session, GetTargetWindowTargetWindowClosed) { 66 TEST(Session, GetTargetWindowTargetWindowClosed) {
44 scoped_ptr<Chrome> chrome(new MockChrome()); 67 scoped_ptr<Chrome> chrome(new MockChrome());
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 session.SwitchToTopFrame(); 117 session.SwitchToTopFrame();
95 ASSERT_EQ(std::string(), session.GetCurrentFrameId()); 118 ASSERT_EQ(std::string(), session.GetCurrentFrameId());
96 119
97 session.SwitchToSubFrame("3.1", std::string()); 120 session.SwitchToSubFrame("3.1", std::string());
98 ASSERT_EQ("3.1", session.GetCurrentFrameId()); 121 ASSERT_EQ("3.1", session.GetCurrentFrameId());
99 session.SwitchToSubFrame("3.2", std::string()); 122 session.SwitchToSubFrame("3.2", std::string());
100 ASSERT_EQ("3.2", session.GetCurrentFrameId()); 123 ASSERT_EQ("3.2", session.GetCurrentFrameId());
101 session.SwitchToTopFrame(); 124 session.SwitchToTopFrame();
102 ASSERT_EQ(std::string(), session.GetCurrentFrameId()); 125 ASSERT_EQ(std::string(), session.GetCurrentFrameId());
103 } 126 }
127
128 TEST(Session, OnCommand) {
129 Session session("1");
130 MockCommandListener* listener1 = new MockCommandListener();
stgao 2014/06/15 23:57:38 Memory leak: please use a scoped_ptr.
johnmoore 2014/06/16 20:49:18 session.AddListener should take care of transferri
131 MockCommandListener* listener2 = new MockCommandListener();
132 MockCommandListener* listener3 = new MockCommandListener();
133 session.AddListener(listener1);
134 session.AddListener(listener2);
135 session.AddListener(listener3);
136 listener1->VerifyNotCalled();
137 listener2->VerifyNotCalled();
138 listener3->VerifyNotCalled();
139 session.OnCommand("cmd");
140 listener1->VerifyCalled();
141 listener2->VerifyCalled();
142 listener3->VerifyCalled();
143 }
OLDNEW
« chrome/test/chromedriver/session.h ('K') | « chrome/test/chromedriver/session.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698