capybara-webkit 1.1.1 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +2 -0
  3. data/.travis.yml +19 -13
  4. data/Appraisals +8 -4
  5. data/Gemfile.lock +29 -14
  6. data/NEWS.md +4 -0
  7. data/README.md +1 -1
  8. data/Rakefile +1 -1
  9. data/capybara-webkit.gemspec +2 -1
  10. data/gemfiles/2.0.gemfile.lock +10 -6
  11. data/gemfiles/2.1.gemfile.lock +22 -9
  12. data/gemfiles/2.2.gemfile +7 -0
  13. data/gemfiles/2.2.gemfile.lock +77 -0
  14. data/gemfiles/2.3.gemfile +7 -0
  15. data/gemfiles/2.3.gemfile.lock +77 -0
  16. data/lib/capybara/webkit/browser.rb +28 -4
  17. data/lib/capybara/webkit/connection.rb +9 -24
  18. data/lib/capybara/webkit/driver.rb +40 -4
  19. data/lib/capybara/webkit/errors.rb +3 -0
  20. data/lib/capybara/webkit/version.rb +1 -1
  21. data/spec/browser_spec.rb +1 -1
  22. data/spec/connection_spec.rb +27 -5
  23. data/spec/driver_rendering_spec.rb +10 -0
  24. data/spec/driver_resize_window_spec.rb +22 -0
  25. data/spec/driver_spec.rb +117 -9
  26. data/spec/selenium_compatibility_spec.rb +3 -0
  27. data/spec/spec_helper.rb +22 -3
  28. data/spec/support/matchers/include_response.rb +24 -0
  29. data/src/CommandFactory.cpp +7 -1
  30. data/src/GoBack.cpp +12 -0
  31. data/src/GoBack.h +10 -0
  32. data/src/GoForward.cpp +12 -0
  33. data/src/GoForward.h +10 -0
  34. data/src/Render.cpp +10 -1
  35. data/src/Reset.cpp +0 -2
  36. data/src/SocketCommand.cpp +6 -0
  37. data/src/SocketCommand.h +1 -0
  38. data/src/StdinNotifier.cpp +16 -0
  39. data/src/StdinNotifier.h +20 -0
  40. data/src/WebPage.cpp +20 -5
  41. data/src/WebPage.h +4 -1
  42. data/src/WebPageManager.cpp +18 -7
  43. data/src/WebPageManager.h +2 -1
  44. data/src/WindowClose.cpp +10 -0
  45. data/src/WindowClose.h +12 -0
  46. data/src/WindowCommand.cpp +27 -0
  47. data/src/WindowCommand.h +21 -0
  48. data/src/WindowFocus.cpp +2 -25
  49. data/src/WindowFocus.h +4 -7
  50. data/src/WindowMaximize.cpp +14 -0
  51. data/src/WindowMaximize.h +12 -0
  52. data/src/WindowOpen.cpp +12 -0
  53. data/src/WindowOpen.h +10 -0
  54. data/src/WindowResize.cpp +16 -0
  55. data/src/WindowResize.h +12 -0
  56. data/src/WindowSize.cpp +17 -0
  57. data/src/WindowSize.h +12 -0
  58. data/src/capybara.js +19 -3
  59. data/src/find_command.h +7 -1
  60. data/src/main.cpp +4 -0
  61. data/src/webkit_server.pro +20 -4
  62. data/templates/Command.cpp +2 -0
  63. data/templates/Command.h +1 -3
  64. metadata +82 -54
  65. data/src/ResizeWindow.cpp +0 -17
  66. data/src/ResizeWindow.h +0 -10
@@ -0,0 +1,21 @@
1
+ #ifndef WINDOW_COMMAND_H
2
+ #define WINDOW_COMMAND_H
3
+
4
+ #include "SocketCommand.h"
5
+
6
+ class WindowCommand : public SocketCommand {
7
+ Q_OBJECT
8
+
9
+ public:
10
+ WindowCommand(WebPageManager *, QStringList &arguments, QObject *parent = 0);
11
+ virtual void start();
12
+
13
+ protected:
14
+ virtual void windowFound(WebPage *) = 0;
15
+
16
+ private:
17
+ void findWindow(QString);
18
+ void windowNotFound();
19
+ };
20
+
21
+ #endif
data/src/WindowFocus.cpp CHANGED
@@ -1,33 +1,10 @@
1
1
  #include "WindowFocus.h"
2
- #include "SocketCommand.h"
3
2
  #include "WebPage.h"
4
- #include "CommandFactory.h"
5
- #include "WebPageManager.h"
6
- #include "ErrorMessage.h"
7
3
 
8
- WindowFocus::WindowFocus(WebPageManager *manager, QStringList &arguments, QObject *parent) : SocketCommand(manager, arguments, parent) {
4
+ WindowFocus::WindowFocus(WebPageManager *manager, QStringList &arguments, QObject *parent) : WindowCommand(manager, arguments, parent) {
9
5
  }
10
6
 
11
- void WindowFocus::start() {
12
- focusWindow(arguments()[0]);
13
- }
14
-
15
- void WindowFocus::windowNotFound() {
16
- finish(false, new ErrorMessage("Unable to locate window."));
17
- }
18
-
19
- void WindowFocus::success(WebPage *page) {
7
+ void WindowFocus::windowFound(WebPage *page) {
20
8
  page->setFocus();
21
9
  finish(true);
22
10
  }
23
-
24
- void WindowFocus::focusWindow(QString selector) {
25
- foreach(WebPage *page, manager()->pages()) {
26
- if (page->matchesWindowSelector(selector)) {
27
- success(page);
28
- return;
29
- }
30
- }
31
-
32
- windowNotFound();
33
- }
data/src/WindowFocus.h CHANGED
@@ -1,15 +1,12 @@
1
- #include "SocketCommand.h"
1
+ #include "WindowCommand.h"
2
2
 
3
- class WindowFocus : public SocketCommand {
3
+ class WindowFocus : public WindowCommand {
4
4
  Q_OBJECT
5
5
 
6
6
  public:
7
7
  WindowFocus(WebPageManager *, QStringList &arguments, QObject *parent = 0);
8
- virtual void start();
9
8
 
10
- private:
11
- void success(WebPage *);
12
- void windowNotFound();
13
- void focusWindow(QString);
9
+ protected:
10
+ virtual void windowFound(WebPage *);
14
11
  };
15
12
 
@@ -0,0 +1,14 @@
1
+ #include <QDesktopWidget>
2
+ #include "WindowMaximize.h"
3
+ #include "WebPage.h"
4
+ #include "WebPageManager.h"
5
+
6
+ WindowMaximize::WindowMaximize(WebPageManager *manager, QStringList &arguments, QObject *parent) : WindowCommand(manager, arguments, parent) {
7
+ }
8
+
9
+ void WindowMaximize::windowFound(WebPage *page) {
10
+ QDesktopWidget *desktop = QApplication::desktop();
11
+ QRect area = desktop->availableGeometry();
12
+ page->resize(area.width(), area.height());
13
+ finish(true);
14
+ }
@@ -0,0 +1,12 @@
1
+ #include "WindowCommand.h"
2
+
3
+ class WindowMaximize : public WindowCommand {
4
+ Q_OBJECT
5
+
6
+ public:
7
+ WindowMaximize(WebPageManager *, QStringList &arguments, QObject *parent = 0);
8
+
9
+ protected:
10
+ virtual void windowFound(WebPage *);
11
+ };
12
+
@@ -0,0 +1,12 @@
1
+ #include "WindowOpen.h"
2
+ #include "SocketCommand.h"
3
+ #include "WebPage.h"
4
+ #include "WebPageManager.h"
5
+
6
+ WindowOpen::WindowOpen(WebPageManager *manager, QStringList &arguments, QObject *parent) : SocketCommand(manager, arguments, parent) {
7
+ }
8
+
9
+ void WindowOpen::start() {
10
+ manager()->createPage();
11
+ finish(true);
12
+ }
data/src/WindowOpen.h ADDED
@@ -0,0 +1,10 @@
1
+ #include "SocketCommand.h"
2
+
3
+ class WindowOpen : public SocketCommand {
4
+ Q_OBJECT
5
+
6
+ public:
7
+ WindowOpen(WebPageManager *, QStringList &arguments, QObject *parent = 0);
8
+ virtual void start();
9
+ };
10
+
@@ -0,0 +1,16 @@
1
+ #include "WindowResize.h"
2
+ #include "WebPage.h"
3
+ #include "WebPageManager.h"
4
+
5
+ WindowResize::WindowResize(WebPageManager *manager, QStringList &arguments, QObject *parent) : WindowCommand(manager, arguments, parent) {
6
+ }
7
+
8
+ void WindowResize::windowFound(WebPage *page) {
9
+ int width = arguments()[1].toInt();
10
+ int height = arguments()[2].toInt();
11
+
12
+ page->resize(width, height);
13
+
14
+ finish(true);
15
+ }
16
+
@@ -0,0 +1,12 @@
1
+ #include "WindowCommand.h"
2
+
3
+ class WindowResize : public WindowCommand {
4
+ Q_OBJECT
5
+
6
+ public:
7
+ WindowResize(WebPageManager *, QStringList &arguments, QObject *parent = 0);
8
+
9
+ protected:
10
+ virtual void windowFound(WebPage *);
11
+ };
12
+
@@ -0,0 +1,17 @@
1
+ #include "WindowSize.h"
2
+ #include "WebPage.h"
3
+ #include "WebPageManager.h"
4
+ #include "JsonSerializer.h"
5
+
6
+ WindowSize::WindowSize(WebPageManager *manager, QStringList &arguments, QObject *parent) : WindowCommand(manager, arguments, parent) {
7
+ }
8
+
9
+ void WindowSize::windowFound(WebPage *page) {
10
+ QSize size = page->viewportSize();
11
+ QVariantList elements;
12
+ elements << size.width();
13
+ elements << size.height();
14
+ JsonSerializer serializer;
15
+ QByteArray json = serializer.serialize(elements);
16
+ finish(true, json);
17
+ }
data/src/WindowSize.h ADDED
@@ -0,0 +1,12 @@
1
+ #include "WindowCommand.h"
2
+
3
+ class WindowSize : public WindowCommand {
4
+ Q_OBJECT
5
+
6
+ public:
7
+ WindowSize(WebPageManager *, QStringList &arguments, QObject *parent = 0);
8
+
9
+ protected:
10
+ virtual void windowFound(WebPage *);
11
+ };
12
+
data/src/capybara.js CHANGED
@@ -66,7 +66,9 @@ Capybara = {
66
66
  text: function (index) {
67
67
  var node = this.getNode(index);
68
68
  var type = (node.type || node.tagName).toLowerCase();
69
- if (type == "textarea") {
69
+ if (!this.isNodeVisible(node)) {
70
+ return '';
71
+ } else if (type == "textarea") {
70
72
  return node.innerHTML;
71
73
  } else {
72
74
  return node.innerText || node.textContent;
@@ -286,20 +288,34 @@ Capybara = {
286
288
  CapybaraInvocation.keypress(value[strindex]);
287
289
  }
288
290
 
291
+ if (value == '')
292
+ this.trigger(index, "change");
289
293
  } else if (type === "checkbox" || type === "radio") {
290
294
  if (node.checked != (value === "true")) {
291
295
  this.leftClick(index);
292
296
  }
293
-
294
297
  } else if (type === "file") {
295
298
  this.attachedFiles = Array.prototype.slice.call(arguments, 1);
296
299
  this.leftClick(index);
297
-
300
+ } else if (this.isContentEditable(node)) {
301
+ var content = document.createTextNode(value);
302
+ node.innerHTML = '';
303
+ node.appendChild(content);
298
304
  } else {
299
305
  node.value = value;
300
306
  }
301
307
  },
302
308
 
309
+ isContentEditable: function(node) {
310
+ if (node.contentEditable == 'true') {
311
+ return true;
312
+ } else if (node.contentEditable == 'false') {
313
+ return false;
314
+ } else if (node.contentEditable == 'inherit') {
315
+ return this.isContentEditable(node.parentNode);
316
+ }
317
+ },
318
+
303
319
  focus: function(index) {
304
320
  this.getNode(index).focus();
305
321
  },
data/src/find_command.h CHANGED
@@ -21,7 +21,7 @@ CHECK_COMMAND(GetCookies)
21
21
  CHECK_COMMAND(SetProxy)
22
22
  CHECK_COMMAND(ConsoleMessages)
23
23
  CHECK_COMMAND(CurrentUrl)
24
- CHECK_COMMAND(ResizeWindow)
24
+ CHECK_COMMAND(WindowResize)
25
25
  CHECK_COMMAND(IgnoreSslErrors)
26
26
  CHECK_COMMAND(SetSkipImageLoading)
27
27
  CHECK_COMMAND(WindowFocus)
@@ -42,3 +42,9 @@ CHECK_COMMAND(SetUrlBlacklist)
42
42
  CHECK_COMMAND(Title)
43
43
  CHECK_COMMAND(Version)
44
44
  CHECK_COMMAND(FindCss)
45
+ CHECK_COMMAND(WindowClose)
46
+ CHECK_COMMAND(WindowOpen)
47
+ CHECK_COMMAND(WindowSize)
48
+ CHECK_COMMAND(WindowMaximize)
49
+ CHECK_COMMAND(GoBack)
50
+ CHECK_COMMAND(GoForward)
data/src/main.cpp CHANGED
@@ -1,5 +1,6 @@
1
1
  #include "Server.h"
2
2
  #include "IgnoreDebugOutput.h"
3
+ #include "StdinNotifier.h"
3
4
  #include <QApplication>
4
5
  #include <iostream>
5
6
  #ifdef Q_OS_UNIX
@@ -19,6 +20,9 @@ int main(int argc, char **argv) {
19
20
  app.setOrganizationName("thoughtbot, inc");
20
21
  app.setOrganizationDomain("thoughtbot.com");
21
22
 
23
+ StdinNotifier notifier;
24
+ QObject::connect(&notifier, SIGNAL(eof()), &app, SLOT(quit()));
25
+
22
26
  ignoreDebugOutput();
23
27
  Server server(0);
24
28
 
@@ -7,6 +7,13 @@ PRECOMPILED_DIR = $${BUILD_DIR}
7
7
  OBJECTS_DIR = $${BUILD_DIR}
8
8
  MOC_DIR = $${BUILD_DIR}
9
9
  HEADERS = \
10
+ GoForward.h \
11
+ GoBack.h \
12
+ WindowMaximize.h \
13
+ WindowSize.h \
14
+ WindowCommand.h \
15
+ WindowOpen.h \
16
+ WindowClose.h \
10
17
  Version.h \
11
18
  EnableLogging.h \
12
19
  Authenticate.h \
@@ -18,7 +25,7 @@ HEADERS = \
18
25
  JavascriptConfirmMessages.h \
19
26
  JavascriptPromptMessages.h \
20
27
  IgnoreSslErrors.h \
21
- ResizeWindow.h \
28
+ WindowResize.h \
22
29
  CurrentUrl.h \
23
30
  ConsoleMessages.h \
24
31
  WebPage.h \
@@ -68,9 +75,17 @@ HEADERS = \
68
75
  JavascriptCommand.h \
69
76
  FindXpath.h \
70
77
  NetworkReplyProxy.h \
71
- IgnoreDebugOutput.h
78
+ IgnoreDebugOutput.h \
79
+ StdinNotifier.h
72
80
 
73
81
  SOURCES = \
82
+ GoForward.cpp \
83
+ GoBack.cpp \
84
+ WindowMaximize.cpp \
85
+ WindowSize.cpp \
86
+ WindowCommand.cpp \
87
+ WindowOpen.cpp \
88
+ WindowClose.cpp \
74
89
  Version.cpp \
75
90
  EnableLogging.cpp \
76
91
  Authenticate.cpp \
@@ -82,7 +97,7 @@ SOURCES = \
82
97
  JavascriptConfirmMessages.cpp \
83
98
  JavascriptPromptMessages.cpp \
84
99
  IgnoreSslErrors.cpp \
85
- ResizeWindow.cpp \
100
+ WindowResize.cpp \
86
101
  CurrentUrl.cpp \
87
102
  ConsoleMessages.cpp \
88
103
  main.cpp \
@@ -133,7 +148,8 @@ SOURCES = \
133
148
  JavascriptCommand.cpp \
134
149
  FindXpath.cpp \
135
150
  NetworkReplyProxy.cpp \
136
- IgnoreDebugOutput.cpp
151
+ IgnoreDebugOutput.cpp \
152
+ StdinNotifier.cpp
137
153
 
138
154
  RESOURCES = webkit_server.qrc
139
155
  QT += network
@@ -1,5 +1,7 @@
1
1
  #include "NAME.h"
2
+ #include "SocketCommand.h"
2
3
  #include "WebPage.h"
4
+ #include "WebPageManager.h"
3
5
 
4
6
  NAME::NAME(WebPageManager *manager, QStringList &arguments, QObject *parent) : SocketCommand(manager, arguments, parent) {
5
7
  }
data/templates/Command.h CHANGED
@@ -1,6 +1,4 @@
1
- #include "Command.h"
2
-
3
- class WebPage;
1
+ #include "SocketCommand.h"
4
2
 
5
3
  class NAME : public SocketCommand {
6
4
  Q_OBJECT
metadata CHANGED
@@ -1,8 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara-webkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
5
- prerelease:
4
+ version: 1.2.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - thoughtbot
@@ -14,140 +13,138 @@ authors:
14
13
  autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
- date: 2013-12-25 00:00:00.000000000 Z
16
+ date: 2014-07-02 00:00:00.000000000 Z
18
17
  dependencies:
19
18
  - !ruby/object:Gem::Dependency
20
19
  name: capybara
21
20
  requirement: !ruby/object:Gem::Requirement
22
- none: false
23
21
  requirements:
24
- - - ! '>='
22
+ - - ">="
25
23
  - !ruby/object:Gem::Version
26
24
  version: 2.0.2
27
- - - <
25
+ - - "<"
28
26
  - !ruby/object:Gem::Version
29
- version: 2.2.0
27
+ version: 2.4.0
30
28
  type: :runtime
31
29
  prerelease: false
32
30
  version_requirements: !ruby/object:Gem::Requirement
33
- none: false
34
31
  requirements:
35
- - - ! '>='
32
+ - - ">="
36
33
  - !ruby/object:Gem::Version
37
34
  version: 2.0.2
38
- - - <
35
+ - - "<"
39
36
  - !ruby/object:Gem::Version
40
- version: 2.2.0
37
+ version: 2.4.0
41
38
  - !ruby/object:Gem::Dependency
42
39
  name: json
43
40
  requirement: !ruby/object:Gem::Requirement
44
- none: false
45
41
  requirements:
46
- - - ! '>='
42
+ - - ">="
47
43
  - !ruby/object:Gem::Version
48
44
  version: '0'
49
45
  type: :runtime
50
46
  prerelease: false
51
47
  version_requirements: !ruby/object:Gem::Requirement
52
- none: false
53
48
  requirements:
54
- - - ! '>='
49
+ - - ">="
55
50
  - !ruby/object:Gem::Version
56
51
  version: '0'
57
52
  - !ruby/object:Gem::Dependency
58
53
  name: rspec
59
54
  requirement: !ruby/object:Gem::Requirement
60
- none: false
61
55
  requirements:
62
- - - ~>
56
+ - - "~>"
63
57
  - !ruby/object:Gem::Version
64
58
  version: 2.14.0
65
59
  type: :development
66
60
  prerelease: false
67
61
  version_requirements: !ruby/object:Gem::Requirement
68
- none: false
69
62
  requirements:
70
- - - ~>
63
+ - - "~>"
71
64
  - !ruby/object:Gem::Version
72
65
  version: 2.14.0
73
66
  - !ruby/object:Gem::Dependency
74
67
  name: sinatra
75
68
  requirement: !ruby/object:Gem::Requirement
76
- none: false
77
69
  requirements:
78
- - - ! '>='
70
+ - - ">="
79
71
  - !ruby/object:Gem::Version
80
72
  version: '0'
81
73
  type: :development
82
74
  prerelease: false
83
75
  version_requirements: !ruby/object:Gem::Requirement
84
- none: false
85
76
  requirements:
86
- - - ! '>='
77
+ - - ">="
87
78
  - !ruby/object:Gem::Version
88
79
  version: '0'
89
80
  - !ruby/object:Gem::Dependency
90
81
  name: mini_magick
91
82
  requirement: !ruby/object:Gem::Requirement
92
- none: false
93
83
  requirements:
94
- - - ! '>='
84
+ - - ">="
95
85
  - !ruby/object:Gem::Version
96
86
  version: '0'
97
87
  type: :development
98
88
  prerelease: false
99
89
  version_requirements: !ruby/object:Gem::Requirement
100
- none: false
101
90
  requirements:
102
- - - ! '>='
91
+ - - ">="
103
92
  - !ruby/object:Gem::Version
104
93
  version: '0'
105
94
  - !ruby/object:Gem::Dependency
106
95
  name: rake
107
96
  requirement: !ruby/object:Gem::Requirement
108
- none: false
109
97
  requirements:
110
- - - ! '>='
98
+ - - ">="
111
99
  - !ruby/object:Gem::Version
112
100
  version: '0'
113
101
  type: :development
114
102
  prerelease: false
115
103
  version_requirements: !ruby/object:Gem::Requirement
116
- none: false
117
104
  requirements:
118
- - - ! '>='
105
+ - - ">="
119
106
  - !ruby/object:Gem::Version
120
107
  version: '0'
121
108
  - !ruby/object:Gem::Dependency
122
109
  name: appraisal
123
110
  requirement: !ruby/object:Gem::Requirement
124
- none: false
125
111
  requirements:
126
- - - ~>
112
+ - - "~>"
127
113
  - !ruby/object:Gem::Version
128
114
  version: 0.4.0
129
115
  type: :development
130
116
  prerelease: false
131
117
  version_requirements: !ruby/object:Gem::Requirement
132
- none: false
133
118
  requirements:
134
- - - ~>
119
+ - - "~>"
135
120
  - !ruby/object:Gem::Version
136
121
  version: 0.4.0
137
122
  - !ruby/object:Gem::Dependency
138
123
  name: selenium-webdriver
139
124
  requirement: !ruby/object:Gem::Requirement
140
- none: false
141
125
  requirements:
142
- - - ! '>='
126
+ - - ">="
143
127
  - !ruby/object:Gem::Version
144
128
  version: '0'
145
129
  type: :development
146
130
  prerelease: false
147
131
  version_requirements: !ruby/object:Gem::Requirement
148
- none: false
149
132
  requirements:
150
- - - ! '>='
133
+ - - ">="
134
+ - !ruby/object:Gem::Version
135
+ version: '0'
136
+ - !ruby/object:Gem::Dependency
137
+ name: launchy
138
+ requirement: !ruby/object:Gem::Requirement
139
+ requirements:
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ version: '0'
143
+ type: :development
144
+ prerelease: false
145
+ version_requirements: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - ">="
151
148
  - !ruby/object:Gem::Version
152
149
  version: '0'
153
150
  description:
@@ -157,9 +154,9 @@ extensions:
157
154
  - extconf.rb
158
155
  extra_rdoc_files: []
159
156
  files:
160
- - .gitignore
161
- - .rspec
162
- - .travis.yml
157
+ - ".gitignore"
158
+ - ".rspec"
159
+ - ".travis.yml"
163
160
  - Appraisals
164
161
  - CONTRIBUTING.md
165
162
  - GOALS
@@ -177,6 +174,10 @@ files:
177
174
  - gemfiles/2.0.gemfile.lock
178
175
  - gemfiles/2.1.gemfile
179
176
  - gemfiles/2.1.gemfile.lock
177
+ - gemfiles/2.2.gemfile
178
+ - gemfiles/2.2.gemfile.lock
179
+ - gemfiles/2.3.gemfile
180
+ - gemfiles/2.3.gemfile.lock
180
181
  - lib/capybara-webkit.rb
181
182
  - lib/capybara/webkit.rb
182
183
  - lib/capybara/webkit/browser.rb
@@ -202,6 +203,7 @@ files:
202
203
  - spec/self_signed_ssl_cert.rb
203
204
  - spec/spec_helper.rb
204
205
  - spec/support/app_runner.rb
206
+ - spec/support/matchers/include_response.rb
205
207
  - src/Authenticate.cpp
206
208
  - src/Authenticate.h
207
209
  - src/Body.h
@@ -243,6 +245,10 @@ files:
243
245
  - src/GetWindowHandle.h
244
246
  - src/GetWindowHandles.cpp
245
247
  - src/GetWindowHandles.h
248
+ - src/GoBack.cpp
249
+ - src/GoBack.h
250
+ - src/GoForward.cpp
251
+ - src/GoForward.h
246
252
  - src/Header.cpp
247
253
  - src/Header.h
248
254
  - src/Headers.cpp
@@ -283,8 +289,6 @@ files:
283
289
  - src/Render.h
284
290
  - src/Reset.cpp
285
291
  - src/Reset.h
286
- - src/ResizeWindow.cpp
287
- - src/ResizeWindow.h
288
292
  - src/Response.cpp
289
293
  - src/Response.h
290
294
  - src/Server.cpp
@@ -309,6 +313,8 @@ files:
309
313
  - src/SocketCommand.h
310
314
  - src/Status.cpp
311
315
  - src/Status.h
316
+ - src/StdinNotifier.cpp
317
+ - src/StdinNotifier.h
312
318
  - src/TimeoutCommand.cpp
313
319
  - src/TimeoutCommand.h
314
320
  - src/Title.cpp
@@ -323,8 +329,20 @@ files:
323
329
  - src/WebPage.h
324
330
  - src/WebPageManager.cpp
325
331
  - src/WebPageManager.h
332
+ - src/WindowClose.cpp
333
+ - src/WindowClose.h
334
+ - src/WindowCommand.cpp
335
+ - src/WindowCommand.h
326
336
  - src/WindowFocus.cpp
327
337
  - src/WindowFocus.h
338
+ - src/WindowMaximize.cpp
339
+ - src/WindowMaximize.h
340
+ - src/WindowOpen.cpp
341
+ - src/WindowOpen.h
342
+ - src/WindowResize.cpp
343
+ - src/WindowResize.h
344
+ - src/WindowSize.cpp
345
+ - src/WindowSize.h
328
346
  - src/body.cpp
329
347
  - src/capybara.js
330
348
  - src/find_command.h
@@ -342,29 +360,39 @@ files:
342
360
  homepage: http://github.com/thoughtbot/capybara-webkit
343
361
  licenses:
344
362
  - MIT
363
+ metadata: {}
345
364
  post_install_message:
346
365
  rdoc_options: []
347
366
  require_paths:
348
367
  - lib
349
368
  required_ruby_version: !ruby/object:Gem::Requirement
350
- none: false
351
369
  requirements:
352
- - - ! '>='
370
+ - - ">="
353
371
  - !ruby/object:Gem::Version
354
372
  version: 1.9.0
355
373
  required_rubygems_version: !ruby/object:Gem::Requirement
356
- none: false
357
374
  requirements:
358
- - - ! '>='
375
+ - - ">="
359
376
  - !ruby/object:Gem::Version
360
377
  version: '0'
361
- segments:
362
- - 0
363
- hash: 3687364731503617195
364
378
  requirements: []
365
379
  rubyforge_project:
366
- rubygems_version: 1.8.25
380
+ rubygems_version: 2.2.0
367
381
  signing_key:
368
- specification_version: 3
382
+ specification_version: 4
369
383
  summary: Headless Webkit driver for Capybara
370
- test_files: []
384
+ test_files:
385
+ - spec/browser_spec.rb
386
+ - spec/capybara_webkit_builder_spec.rb
387
+ - spec/connection_spec.rb
388
+ - spec/cookie_jar_spec.rb
389
+ - spec/driver_rendering_spec.rb
390
+ - spec/driver_resize_window_spec.rb
391
+ - spec/driver_spec.rb
392
+ - spec/errors_spec.rb
393
+ - spec/integration/session_spec.rb
394
+ - spec/selenium_compatibility_spec.rb
395
+ - spec/self_signed_ssl_cert.rb
396
+ - spec/spec_helper.rb
397
+ - spec/support/app_runner.rb
398
+ - spec/support/matchers/include_response.rb