capybara-webkit 0.13.2 → 0.14.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. data/.travis.yml +10 -0
  2. data/Gemfile.lock +20 -18
  3. data/NEWS.md +20 -1
  4. data/README.md +12 -10
  5. data/capybara-webkit.gemspec +3 -2
  6. data/lib/capybara/webkit/browser.rb +10 -19
  7. data/lib/capybara/webkit/connection.rb +13 -34
  8. data/lib/capybara/webkit/driver.rb +5 -22
  9. data/lib/capybara/webkit/node.rb +10 -2
  10. data/lib/capybara/webkit/version.rb +1 -1
  11. data/lib/capybara_webkit_builder.rb +10 -1
  12. data/spec/browser_spec.rb +1 -1
  13. data/spec/connection_spec.rb +4 -2
  14. data/spec/driver_rendering_spec.rb +2 -2
  15. data/spec/driver_resize_window_spec.rb +29 -40
  16. data/spec/driver_spec.rb +368 -125
  17. data/spec/integration/session_spec.rb +100 -6
  18. data/spec/spec_helper.rb +6 -9
  19. data/spec/support/app_runner.rb +2 -12
  20. data/src/Authenticate.cpp +2 -2
  21. data/src/ClearCookies.cpp +1 -1
  22. data/src/ClearPromptText.cpp +1 -1
  23. data/src/Command.cpp +13 -0
  24. data/src/Command.h +6 -0
  25. data/src/CommandFactory.cpp +1 -3
  26. data/src/Connection.cpp +4 -3
  27. data/src/ConsoleMessages.cpp +4 -1
  28. data/src/CurrentUrl.cpp +1 -16
  29. data/src/CurrentUrl.h +0 -6
  30. data/src/EnableLogging.cpp +1 -1
  31. data/src/Evaluate.cpp +3 -74
  32. data/src/Evaluate.h +0 -8
  33. data/src/Execute.cpp +2 -2
  34. data/src/Find.cpp +2 -2
  35. data/src/FrameFocus.cpp +3 -3
  36. data/src/GetCookies.cpp +1 -1
  37. data/src/GetTimeout.cpp +1 -1
  38. data/src/GetWindowHandle.cpp +1 -1
  39. data/src/GetWindowHandles.cpp +6 -5
  40. data/src/Header.cpp +2 -2
  41. data/src/Headers.cpp +1 -1
  42. data/src/IgnoreSslErrors.cpp +1 -1
  43. data/src/JavascriptAlertMessages.cpp +4 -1
  44. data/src/JavascriptConfirmMessages.cpp +4 -1
  45. data/src/JavascriptPromptMessages.cpp +4 -1
  46. data/src/JsonSerializer.cpp +116 -0
  47. data/src/JsonSerializer.h +20 -0
  48. data/src/NetworkAccessManager.cpp +58 -17
  49. data/src/NetworkAccessManager.h +6 -0
  50. data/src/NoOpReply.cpp +32 -0
  51. data/src/NoOpReply.h +18 -0
  52. data/src/Node.cpp +1 -1
  53. data/src/NullCommand.cpp +1 -1
  54. data/src/PageLoadingCommand.cpp +5 -4
  55. data/src/Render.cpp +1 -1
  56. data/src/Reset.cpp +1 -1
  57. data/src/ResizeWindow.cpp +1 -1
  58. data/src/Response.cpp +3 -3
  59. data/src/Response.h +13 -4
  60. data/src/SetConfirmAction.cpp +1 -1
  61. data/src/SetCookie.cpp +1 -1
  62. data/src/SetPromptAction.cpp +1 -1
  63. data/src/SetPromptText.cpp +1 -1
  64. data/src/SetProxy.cpp +2 -2
  65. data/src/SetSkipImageLoading.cpp +1 -1
  66. data/src/SetTimeout.cpp +2 -2
  67. data/src/SetUrlBlacklist.cpp +15 -0
  68. data/src/SetUrlBlacklist.h +11 -0
  69. data/src/Status.cpp +1 -1
  70. data/src/TimeoutCommand.cpp +6 -6
  71. data/src/TimeoutCommand.h +0 -3
  72. data/src/UnsupportedContentHandler.cpp +1 -4
  73. data/src/Visit.cpp +1 -1
  74. data/src/WebPage.cpp +41 -31
  75. data/src/WebPage.h +14 -12
  76. data/src/WebPageManager.cpp +13 -8
  77. data/src/WebPageManager.h +3 -2
  78. data/src/WindowFocus.cpp +2 -2
  79. data/src/body.cpp +7 -2
  80. data/src/capybara.js +10 -2
  81. data/src/find_command.h +1 -3
  82. data/src/webkit_server.pro +7 -7
  83. metadata +47 -82
  84. checksums.yaml +0 -7
  85. data/spec/integration/driver_spec.rb +0 -21
  86. data/src/RequestedUrl.cpp +0 -13
  87. data/src/RequestedUrl.h +0 -10
  88. data/src/Source.cpp +0 -19
  89. data/src/Source.h +0 -18
  90. data/src/Url.cpp +0 -13
  91. data/src/Url.h +0 -10
@@ -1,9 +1,9 @@
1
1
  #ifndef _WEBPAGE_H
2
2
  #define _WEBPAGE_H
3
3
  #include <QtWebKit>
4
- #include <QtNetwork>
5
4
 
6
5
  class WebPageManager;
6
+ class NetworkAccessManager;
7
7
 
8
8
  class WebPage : public QWebPage {
9
9
  Q_OBJECT
@@ -23,16 +23,19 @@ class WebPage : public QWebPage {
23
23
  bool render(const QString &fileName);
24
24
  virtual bool extension (Extension extension, const ExtensionOption *option=0, ExtensionReturn *output=0);
25
25
  void setSkipImageLoading(bool skip);
26
- QString consoleMessages();
27
- QString alertMessages();
28
- QString confirmMessages();
29
- QString promptMessages();
26
+ QVariantList consoleMessages();
27
+ QVariantList alertMessages();
28
+ QVariantList confirmMessages();
29
+ QVariantList promptMessages();
30
30
  void resetWindowSize();
31
31
  QWebPage *createWindow(WebWindowType type);
32
32
  QString uuid();
33
33
  QString getWindowName();
34
34
  bool matchesWindowSelector(QString);
35
35
  void setFocus();
36
+ NetworkAccessManager *networkAccessManager();
37
+ bool unsupportedContentLoaded();
38
+ void unsupportedContentFinishedReply(QNetworkReply *reply);
36
39
 
37
40
  public slots:
38
41
  bool shouldInterruptJavaScript();
@@ -44,8 +47,6 @@ class WebPage : public QWebPage {
44
47
  void frameCreated(QWebFrame *);
45
48
  void handleSslErrorsForReply(QNetworkReply *reply, const QList<QSslError> &);
46
49
  void handleUnsupportedContent(QNetworkReply *reply);
47
- void networkAccessManagerCreatedRequest(QByteArray &url, QNetworkReply *reply);
48
- void networkAccessManagerFinishedReply(QNetworkReply *reply);
49
50
 
50
51
  signals:
51
52
  void pageFinished(bool);
@@ -65,19 +66,20 @@ class WebPage : public QWebPage {
65
66
  QString m_userAgent;
66
67
  bool m_loading;
67
68
  bool m_failed;
68
- QString getLastAttachedFileName();
69
+ QStringList getAttachedFileNames();
69
70
  void loadJavascript();
70
71
  void setUserStylesheet();
71
72
  bool m_confirm;
72
73
  bool m_prompt;
73
- QStringList m_consoleMessages;
74
- QStringList m_alertMessages;
75
- QStringList m_confirmMessages;
74
+ QVariantList m_consoleMessages;
75
+ QVariantList m_alertMessages;
76
+ QVariantList m_confirmMessages;
76
77
  QString m_prompt_text;
77
- QStringList m_promptMessages;
78
+ QVariantList m_promptMessages;
78
79
  QString m_uuid;
79
80
  WebPageManager *m_manager;
80
81
  QString m_errorPageMessage;
82
+ bool m_unsupportedContentLoaded;
81
83
  };
82
84
 
83
85
  #endif //_WEBPAGE_H
@@ -36,8 +36,6 @@ WebPage *WebPageManager::createPage(QObject *parent) {
36
36
  this, SLOT(setPageStatus(bool)));
37
37
  connect(page, SIGNAL(requestCreated(QByteArray &, QNetworkReply *)),
38
38
  this, SLOT(requestCreated(QByteArray &, QNetworkReply *)));
39
- connect(page, SIGNAL(replyFinished(QNetworkReply *)),
40
- this, SLOT(replyFinished(QNetworkReply *)));
41
39
  append(page);
42
40
  return page;
43
41
  }
@@ -47,25 +45,32 @@ void WebPageManager::emitLoadStarted() {
47
45
  logger() << "Load started";
48
46
  emit loadStarted();
49
47
  }
48
+ m_started += qobject_cast<WebPage *>(sender());
50
49
  }
51
50
 
52
51
  void WebPageManager::requestCreated(QByteArray &url, QNetworkReply *reply) {
53
52
  logger() << "Started request to" << url;
54
- m_started += reply;
53
+ if (reply->isFinished())
54
+ replyFinished(reply);
55
+ else {
56
+ connect(reply, SIGNAL(finished()), SLOT(handleReplyFinished()));
57
+ }
58
+ }
59
+
60
+ void WebPageManager::handleReplyFinished() {
61
+ QNetworkReply *reply = qobject_cast<QNetworkReply *>(sender());
62
+ disconnect(reply, SIGNAL(finished()), this, SLOT(handleReplyFinished()));
63
+ replyFinished(reply);
55
64
  }
56
65
 
57
66
  void WebPageManager::replyFinished(QNetworkReply *reply) {
58
67
  int status = reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt();
59
68
  logger() << "Received" << status << "from" << reply->url().toString();
60
- m_started.remove(reply);
61
- logger() << m_started.size() << "requests remaining";
62
- if (m_started.empty() && !m_success) {
63
- emitPageFinished();
64
- }
65
69
  }
66
70
 
67
71
  void WebPageManager::setPageStatus(bool success) {
68
72
  logger() << "Page finished with" << success;
73
+ m_started.remove(qobject_cast<WebPage *>(sender()));
69
74
  m_success = success && m_success;
70
75
  if (m_started.empty()) {
71
76
  emitPageFinished();
@@ -29,12 +29,13 @@ class WebPageManager : public QObject {
29
29
  bool isLoading() const;
30
30
  QDebug logger() const;
31
31
  void enableLogging();
32
+ void replyFinished(QNetworkReply *reply);
32
33
 
33
34
  public slots:
34
35
  void emitLoadStarted();
35
36
  void setPageStatus(bool);
36
37
  void requestCreated(QByteArray &url, QNetworkReply *reply);
37
- void replyFinished(QNetworkReply *reply);
38
+ void handleReplyFinished();
38
39
 
39
40
  signals:
40
41
  void pageFinished(bool);
@@ -48,7 +49,7 @@ class WebPageManager : public QObject {
48
49
  WebPage *m_currentPage;
49
50
  bool m_ignoreSslErrors;
50
51
  NetworkCookieJar *m_cookieJar;
51
- QSet<QNetworkReply*> m_started;
52
+ QSet<WebPage *> m_started;
52
53
  bool m_success;
53
54
  bool m_loggingEnabled;
54
55
  QString *m_ignoredOutput;
@@ -12,12 +12,12 @@ void WindowFocus::start() {
12
12
  }
13
13
 
14
14
  void WindowFocus::windowNotFound() {
15
- emit finished(new Response(false, QString("Unable to locate window. ")));
15
+ emitFinished(false, QString("Unable to locate window. "));
16
16
  }
17
17
 
18
18
  void WindowFocus::success(WebPage *page) {
19
19
  page->setFocus();
20
- emit finished(new Response(true));
20
+ emitFinished(true);
21
21
  }
22
22
 
23
23
  void WindowFocus::focusWindow(QString selector) {
@@ -6,6 +6,11 @@ Body::Body(WebPageManager *manager, QStringList &arguments, QObject *parent) : S
6
6
  }
7
7
 
8
8
  void Body::start() {
9
- QString result = page()->currentFrame()->toHtml();
10
- emit finished(new Response(true, result));
9
+ QString result;
10
+ if (page()->unsupportedContentLoaded())
11
+ result = page()->currentFrame()->toPlainText();
12
+ else
13
+ result = page()->currentFrame()->toHtml();
14
+
15
+ emitFinished(true, result);
11
16
  }
@@ -1,7 +1,7 @@
1
1
  Capybara = {
2
2
  nextIndex: 0,
3
3
  nodes: {},
4
- lastAttachedFile: "",
4
+ attachedFiles: [],
5
5
 
6
6
  invoke: function () {
7
7
  return this[CapybaraInvocation.functionName].apply(this, CapybaraInvocation.arguments);
@@ -64,6 +64,10 @@ Capybara = {
64
64
  }
65
65
  },
66
66
 
67
+ hasAttribute: function(index, name) {
68
+ return this.nodes[index].hasAttribute(name);
69
+ },
70
+
67
71
  path: function(index) {
68
72
  return "/" + this.getXPathNode(this.nodes[index]).join("/");
69
73
  },
@@ -260,7 +264,7 @@ Capybara = {
260
264
  }
261
265
 
262
266
  } else if (type === "file") {
263
- this.lastAttachedFile = value;
267
+ this.attachedFiles = Array.prototype.slice.call(arguments, 1);
264
268
  this.click(index);
265
269
 
266
270
  } else {
@@ -338,6 +342,10 @@ Capybara = {
338
342
  };
339
343
  mouseTrigger('mousemove', options);
340
344
  mouseTrigger('mouseup', options);
345
+ },
346
+
347
+ equals: function(index, targetIndex) {
348
+ return this.nodes[index] === this.nodes[targetIndex];
341
349
  }
342
350
  };
343
351
 
@@ -7,8 +7,6 @@ CHECK_COMMAND(Visit)
7
7
  CHECK_COMMAND(Find)
8
8
  CHECK_COMMAND(Reset)
9
9
  CHECK_COMMAND(Node)
10
- CHECK_COMMAND(Url)
11
- CHECK_COMMAND(Source)
12
10
  CHECK_COMMAND(Evaluate)
13
11
  CHECK_COMMAND(Execute)
14
12
  CHECK_COMMAND(FrameFocus)
@@ -22,7 +20,6 @@ CHECK_COMMAND(ClearCookies)
22
20
  CHECK_COMMAND(GetCookies)
23
21
  CHECK_COMMAND(SetProxy)
24
22
  CHECK_COMMAND(ConsoleMessages)
25
- CHECK_COMMAND(RequestedUrl)
26
23
  CHECK_COMMAND(CurrentUrl)
27
24
  CHECK_COMMAND(ResizeWindow)
28
25
  CHECK_COMMAND(IgnoreSslErrors)
@@ -41,4 +38,5 @@ CHECK_COMMAND(JavascriptConfirmMessages)
41
38
  CHECK_COMMAND(JavascriptPromptMessages)
42
39
  CHECK_COMMAND(GetTimeout)
43
40
  CHECK_COMMAND(SetTimeout)
41
+ CHECK_COMMAND(SetUrlBlacklist)
44
42
 
@@ -14,7 +14,6 @@ HEADERS = \
14
14
  IgnoreSslErrors.h \
15
15
  ResizeWindow.h \
16
16
  CurrentUrl.h \
17
- RequestedUrl.h \
18
17
  ConsoleMessages.h \
19
18
  WebPage.h \
20
19
  Server.h \
@@ -26,8 +25,6 @@ HEADERS = \
26
25
  Reset.h \
27
26
  Node.h \
28
27
  JavascriptInvocation.h \
29
- Url.h \
30
- Source.h \
31
28
  Evaluate.h \
32
29
  Execute.h \
33
30
  FrameFocus.h \
@@ -36,7 +33,7 @@ HEADERS = \
36
33
  NetworkCookieJar.h \
37
34
  Header.h \
38
35
  Render.h \
39
- body.h \
36
+ Body.h \
40
37
  Status.h \
41
38
  Headers.h \
42
39
  UnsupportedContentHandler.h \
@@ -56,6 +53,9 @@ HEADERS = \
56
53
  GetTimeout.h \
57
54
  SetTimeout.h \
58
55
  TimeoutCommand.h \
56
+ SetUrlBlacklist.h \
57
+ NoOpReply.h \
58
+ JsonSerializer.h
59
59
 
60
60
  SOURCES = \
61
61
  EnableLogging.cpp \
@@ -70,7 +70,6 @@ SOURCES = \
70
70
  IgnoreSslErrors.cpp \
71
71
  ResizeWindow.cpp \
72
72
  CurrentUrl.cpp \
73
- RequestedUrl.cpp \
74
73
  ConsoleMessages.cpp \
75
74
  main.cpp \
76
75
  WebPage.cpp \
@@ -83,8 +82,6 @@ SOURCES = \
83
82
  Reset.cpp \
84
83
  Node.cpp \
85
84
  JavascriptInvocation.cpp \
86
- Url.cpp \
87
- Source.cpp \
88
85
  Evaluate.cpp \
89
86
  Execute.cpp \
90
87
  FrameFocus.cpp \
@@ -113,6 +110,9 @@ SOURCES = \
113
110
  GetWindowHandles.cpp \
114
111
  GetWindowHandle.cpp \
115
112
  TimeoutCommand.cpp \
113
+ SetUrlBlacklist.cpp \
114
+ NoOpReply.cpp \
115
+ JsonSerializer.cpp
116
116
 
117
117
  RESOURCES = webkit_server.qrc
118
118
  QT += network webkit
metadata CHANGED
@@ -1,123 +1,101 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara-webkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.2
4
+ version: 0.14.0
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - thoughtbot
8
9
  - Joe Ferris
10
+ - Matt Horan
9
11
  - Matt Mongeau
10
12
  - Mike Burns
11
13
  - Jason Morrison
12
14
  autorequire:
13
15
  bindir: bin
14
16
  cert_chain: []
15
- date: 2014-01-03 00:00:00.000000000 Z
17
+ date: 2013-01-03 00:00:00.000000000 Z
16
18
  dependencies:
17
19
  - !ruby/object:Gem::Dependency
18
20
  name: capybara
19
- requirement: !ruby/object:Gem::Requirement
21
+ requirement: &15525620 !ruby/object:Gem::Requirement
22
+ none: false
20
23
  requirements:
21
- - - '>='
24
+ - - ~>
22
25
  - !ruby/object:Gem::Version
23
- version: 1.0.0
24
- - - <
26
+ version: '2.0'
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
- version: '1.2'
29
+ version: 2.0.2
27
30
  type: :runtime
28
31
  prerelease: false
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - '>='
32
- - !ruby/object:Gem::Version
33
- version: 1.0.0
34
- - - <
35
- - !ruby/object:Gem::Version
36
- version: '1.2'
32
+ version_requirements: *15525620
37
33
  - !ruby/object:Gem::Dependency
38
34
  name: json
39
- requirement: !ruby/object:Gem::Requirement
35
+ requirement: &15519880 !ruby/object:Gem::Requirement
36
+ none: false
40
37
  requirements:
41
- - - '>='
38
+ - - ! '>='
42
39
  - !ruby/object:Gem::Version
43
40
  version: '0'
44
41
  type: :runtime
45
42
  prerelease: false
46
- version_requirements: !ruby/object:Gem::Requirement
47
- requirements:
48
- - - '>='
49
- - !ruby/object:Gem::Version
50
- version: '0'
43
+ version_requirements: *15519880
51
44
  - !ruby/object:Gem::Dependency
52
45
  name: rspec
53
- requirement: !ruby/object:Gem::Requirement
46
+ requirement: &15509400 !ruby/object:Gem::Requirement
47
+ none: false
54
48
  requirements:
55
49
  - - ~>
56
50
  - !ruby/object:Gem::Version
57
51
  version: 2.6.0
58
52
  type: :development
59
53
  prerelease: false
60
- version_requirements: !ruby/object:Gem::Requirement
61
- requirements:
62
- - - ~>
63
- - !ruby/object:Gem::Version
64
- version: 2.6.0
54
+ version_requirements: *15509400
65
55
  - !ruby/object:Gem::Dependency
66
56
  name: sinatra
67
- requirement: !ruby/object:Gem::Requirement
57
+ requirement: &15507080 !ruby/object:Gem::Requirement
58
+ none: false
68
59
  requirements:
69
- - - '>='
60
+ - - ! '>='
70
61
  - !ruby/object:Gem::Version
71
62
  version: '0'
72
63
  type: :development
73
64
  prerelease: false
74
- version_requirements: !ruby/object:Gem::Requirement
75
- requirements:
76
- - - '>='
77
- - !ruby/object:Gem::Version
78
- version: '0'
65
+ version_requirements: *15507080
79
66
  - !ruby/object:Gem::Dependency
80
67
  name: mini_magick
81
- requirement: !ruby/object:Gem::Requirement
68
+ requirement: &15493300 !ruby/object:Gem::Requirement
69
+ none: false
82
70
  requirements:
83
- - - '>='
71
+ - - ! '>='
84
72
  - !ruby/object:Gem::Version
85
73
  version: '0'
86
74
  type: :development
87
75
  prerelease: false
88
- version_requirements: !ruby/object:Gem::Requirement
89
- requirements:
90
- - - '>='
91
- - !ruby/object:Gem::Version
92
- version: '0'
76
+ version_requirements: *15493300
93
77
  - !ruby/object:Gem::Dependency
94
78
  name: rake
95
- requirement: !ruby/object:Gem::Requirement
79
+ requirement: &15488580 !ruby/object:Gem::Requirement
80
+ none: false
96
81
  requirements:
97
- - - '>='
82
+ - - ! '>='
98
83
  - !ruby/object:Gem::Version
99
84
  version: '0'
100
85
  type: :development
101
86
  prerelease: false
102
- version_requirements: !ruby/object:Gem::Requirement
103
- requirements:
104
- - - '>='
105
- - !ruby/object:Gem::Version
106
- version: '0'
87
+ version_requirements: *15488580
107
88
  - !ruby/object:Gem::Dependency
108
89
  name: appraisal
109
- requirement: !ruby/object:Gem::Requirement
90
+ requirement: &15475400 !ruby/object:Gem::Requirement
91
+ none: false
110
92
  requirements:
111
93
  - - ~>
112
94
  - !ruby/object:Gem::Version
113
95
  version: 0.4.0
114
96
  type: :development
115
97
  prerelease: false
116
- version_requirements: !ruby/object:Gem::Requirement
117
- requirements:
118
- - - ~>
119
- - !ruby/object:Gem::Version
120
- version: 0.4.0
98
+ version_requirements: *15475400
121
99
  description:
122
100
  email: support@thoughtbot.com
123
101
  executables: []
@@ -127,6 +105,7 @@ extra_rdoc_files: []
127
105
  files:
128
106
  - .gitignore
129
107
  - .rspec
108
+ - .travis.yml
130
109
  - Appraisals
131
110
  - CONTRIBUTING.md
132
111
  - GOALS
@@ -162,7 +141,6 @@ files:
162
141
  - spec/driver_rendering_spec.rb
163
142
  - spec/driver_resize_window_spec.rb
164
143
  - spec/driver_spec.rb
165
- - spec/integration/driver_spec.rb
166
144
  - spec/integration/session_spec.rb
167
145
  - spec/selenium_compatibility_spec.rb
168
146
  - spec/self_signed_ssl_cert.rb
@@ -219,10 +197,14 @@ files:
219
197
  - src/JavascriptInvocation.h
220
198
  - src/JavascriptPromptMessages.cpp
221
199
  - src/JavascriptPromptMessages.h
200
+ - src/JsonSerializer.cpp
201
+ - src/JsonSerializer.h
222
202
  - src/NetworkAccessManager.cpp
223
203
  - src/NetworkAccessManager.h
224
204
  - src/NetworkCookieJar.cpp
225
205
  - src/NetworkCookieJar.h
206
+ - src/NoOpReply.cpp
207
+ - src/NoOpReply.h
226
208
  - src/Node.cpp
227
209
  - src/Node.h
228
210
  - src/NullCommand.cpp
@@ -231,8 +213,6 @@ files:
231
213
  - src/PageLoadingCommand.h
232
214
  - src/Render.cpp
233
215
  - src/Render.h
234
- - src/RequestedUrl.cpp
235
- - src/RequestedUrl.h
236
216
  - src/Reset.cpp
237
217
  - src/Reset.h
238
218
  - src/ResizeWindow.cpp
@@ -255,18 +235,16 @@ files:
255
235
  - src/SetSkipImageLoading.h
256
236
  - src/SetTimeout.cpp
257
237
  - src/SetTimeout.h
238
+ - src/SetUrlBlacklist.cpp
239
+ - src/SetUrlBlacklist.h
258
240
  - src/SocketCommand.cpp
259
241
  - src/SocketCommand.h
260
- - src/Source.cpp
261
- - src/Source.h
262
242
  - src/Status.cpp
263
243
  - src/Status.h
264
244
  - src/TimeoutCommand.cpp
265
245
  - src/TimeoutCommand.h
266
246
  - src/UnsupportedContentHandler.cpp
267
247
  - src/UnsupportedContentHandler.h
268
- - src/Url.cpp
269
- - src/Url.h
270
248
  - src/Visit.cpp
271
249
  - src/Visit.h
272
250
  - src/WebPage.cpp
@@ -286,39 +264,26 @@ files:
286
264
  - webkit_server.pro
287
265
  homepage: http://github.com/thoughtbot/capybara-webkit
288
266
  licenses: []
289
- metadata: {}
290
267
  post_install_message:
291
268
  rdoc_options: []
292
269
  require_paths:
293
270
  - lib
294
271
  required_ruby_version: !ruby/object:Gem::Requirement
272
+ none: false
295
273
  requirements:
296
- - - '>='
274
+ - - ! '>='
297
275
  - !ruby/object:Gem::Version
298
276
  version: '0'
299
277
  required_rubygems_version: !ruby/object:Gem::Requirement
278
+ none: false
300
279
  requirements:
301
- - - '>='
280
+ - - ! '>='
302
281
  - !ruby/object:Gem::Version
303
282
  version: '0'
304
283
  requirements: []
305
284
  rubyforge_project:
306
- rubygems_version: 2.1.10
285
+ rubygems_version: 1.8.15
307
286
  signing_key:
308
- specification_version: 4
287
+ specification_version: 3
309
288
  summary: Headless Webkit driver for Capybara
310
- test_files:
311
- - spec/browser_spec.rb
312
- - spec/capybara_webkit_builder_spec.rb
313
- - spec/connection_spec.rb
314
- - spec/cookie_jar_spec.rb
315
- - spec/driver_rendering_spec.rb
316
- - spec/driver_resize_window_spec.rb
317
- - spec/driver_spec.rb
318
- - spec/integration/driver_spec.rb
319
- - spec/integration/session_spec.rb
320
- - spec/selenium_compatibility_spec.rb
321
- - spec/self_signed_ssl_cert.rb
322
- - spec/spec_helper.rb
323
- - spec/support/app_runner.rb
324
- has_rdoc:
289
+ test_files: []