capybara-webkit 0.11.0 → 0.12.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (86) hide show
  1. data/.gitignore +3 -1
  2. data/Gemfile.lock +5 -4
  3. data/NEWS.md +11 -0
  4. data/README.md +42 -0
  5. data/lib/capybara/driver/webkit.rb +7 -2
  6. data/lib/capybara/driver/webkit/browser.rb +22 -96
  7. data/lib/capybara/driver/webkit/connection.rb +120 -0
  8. data/lib/capybara/driver/webkit/version.rb +1 -1
  9. data/lib/capybara/webkit/matchers.rb +2 -4
  10. data/lib/capybara_webkit_builder.rb +22 -4
  11. data/spec/browser_spec.rb +19 -29
  12. data/spec/connection_spec.rb +54 -0
  13. data/spec/driver_resize_window_spec.rb +59 -0
  14. data/spec/driver_spec.rb +175 -27
  15. data/spec/spec_helper.rb +9 -2
  16. data/src/Body.h +2 -2
  17. data/src/ClearCookies.cpp +2 -5
  18. data/src/ClearCookies.h +2 -2
  19. data/src/Command.cpp +7 -3
  20. data/src/Command.h +4 -2
  21. data/src/CommandFactory.cpp +7 -2
  22. data/src/CommandFactory.h +1 -1
  23. data/src/CommandParser.cpp +13 -5
  24. data/src/CommandParser.h +6 -2
  25. data/src/Connection.cpp +18 -47
  26. data/src/Connection.h +5 -7
  27. data/src/ConsoleMessages.cpp +2 -3
  28. data/src/ConsoleMessages.h +2 -2
  29. data/src/CurrentUrl.cpp +3 -6
  30. data/src/CurrentUrl.h +2 -2
  31. data/src/Evaluate.cpp +3 -3
  32. data/src/Evaluate.h +2 -2
  33. data/src/Execute.cpp +4 -4
  34. data/src/Execute.h +2 -2
  35. data/src/Find.cpp +4 -4
  36. data/src/Find.h +2 -2
  37. data/src/FrameFocus.cpp +7 -7
  38. data/src/FrameFocus.h +2 -2
  39. data/src/GetCookies.cpp +2 -4
  40. data/src/GetCookies.h +2 -2
  41. data/src/Header.cpp +4 -4
  42. data/src/Header.h +2 -2
  43. data/src/Headers.cpp +2 -3
  44. data/src/Headers.h +2 -2
  45. data/src/IgnoreSslErrors.cpp +12 -0
  46. data/src/IgnoreSslErrors.h +12 -0
  47. data/src/NetworkAccessManager.cpp +4 -0
  48. data/src/NetworkAccessManager.h +2 -1
  49. data/src/Node.cpp +3 -3
  50. data/src/Node.h +2 -2
  51. data/src/NullCommand.cpp +10 -0
  52. data/src/NullCommand.h +11 -0
  53. data/src/PageLoadingCommand.cpp +46 -0
  54. data/src/PageLoadingCommand.h +40 -0
  55. data/src/Render.cpp +5 -6
  56. data/src/Render.h +2 -2
  57. data/src/RequestedUrl.cpp +3 -6
  58. data/src/RequestedUrl.h +2 -2
  59. data/src/Reset.cpp +8 -7
  60. data/src/Reset.h +2 -2
  61. data/src/ResizeWindow.cpp +16 -0
  62. data/src/ResizeWindow.h +12 -0
  63. data/src/Response.cpp +6 -1
  64. data/src/Response.h +4 -2
  65. data/src/Server.cpp +2 -3
  66. data/src/Server.h +1 -1
  67. data/src/SetCookie.cpp +3 -5
  68. data/src/SetCookie.h +2 -2
  69. data/src/SetProxy.cpp +7 -9
  70. data/src/SetProxy.h +2 -2
  71. data/src/Source.cpp +2 -4
  72. data/src/Source.h +2 -2
  73. data/src/Status.cpp +2 -3
  74. data/src/Status.h +2 -2
  75. data/src/Url.cpp +3 -6
  76. data/src/Url.h +2 -2
  77. data/src/Visit.cpp +4 -13
  78. data/src/Visit.h +2 -5
  79. data/src/WebPage.cpp +11 -9
  80. data/src/WebPage.h +3 -3
  81. data/src/body.cpp +2 -3
  82. data/src/capybara.js +58 -3
  83. data/src/find_command.h +3 -1
  84. data/src/main.cpp +1 -2
  85. data/src/webkit_server.pro +8 -0
  86. metadata +29 -16
data/src/find_command.h CHANGED
@@ -1,6 +1,6 @@
1
1
  #define CHECK_COMMAND(expectedName) \
2
2
  if (strcmp(#expectedName, name) == 0) { \
3
- return new expectedName(m_page, this); \
3
+ return new expectedName(m_page, arguments, this); \
4
4
  }
5
5
 
6
6
  CHECK_COMMAND(Visit)
@@ -25,3 +25,5 @@ CHECK_COMMAND(SetProxy)
25
25
  CHECK_COMMAND(ConsoleMessages)
26
26
  CHECK_COMMAND(RequestedUrl)
27
27
  CHECK_COMMAND(CurrentUrl)
28
+ CHECK_COMMAND(ResizeWindow)
29
+ CHECK_COMMAND(IgnoreSslErrors)
data/src/main.cpp CHANGED
@@ -19,9 +19,8 @@ int main(int argc, char **argv) {
19
19
  app.setOrganizationDomain("thoughtbot.com");
20
20
 
21
21
  QStringList args = app.arguments();
22
- bool ignoreSslErrors = args.contains("--ignore-ssl-errors");
23
22
 
24
- Server server(0, ignoreSslErrors);
23
+ Server server(0);
25
24
 
26
25
  if (server.start()) {
27
26
  std::cout << "Capybara-webkit server started, listening on port: " << server.server_port() << std::endl;
@@ -2,6 +2,8 @@ TEMPLATE = app
2
2
  TARGET = webkit_server
3
3
  DESTDIR = .
4
4
  HEADERS = \
5
+ IgnoreSslErrors.h \
6
+ ResizeWindow.h \
5
7
  CurrentUrl.h \
6
8
  RequestedUrl.h \
7
9
  ConsoleMessages.h \
@@ -34,8 +36,12 @@ HEADERS = \
34
36
  CommandParser.h \
35
37
  CommandFactory.h \
36
38
  SetProxy.h \
39
+ NullCommand.h \
40
+ PageLoadingCommand.h \
37
41
 
38
42
  SOURCES = \
43
+ IgnoreSslErrors.cpp \
44
+ ResizeWindow.cpp \
39
45
  CurrentUrl.cpp \
40
46
  RequestedUrl.cpp \
41
47
  ConsoleMessages.cpp \
@@ -69,6 +75,8 @@ SOURCES = \
69
75
  CommandParser.cpp \
70
76
  CommandFactory.cpp \
71
77
  SetProxy.cpp \
78
+ NullCommand.cpp \
79
+ PageLoadingCommand.cpp \
72
80
 
73
81
  RESOURCES = webkit_server.qrc
74
82
  QT += network webkit
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara-webkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,11 +13,11 @@ authors:
13
13
  autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
- date: 2012-03-16 00:00:00.000000000Z
16
+ date: 2012-05-11 00:00:00.000000000Z
17
17
  dependencies:
18
18
  - !ruby/object:Gem::Dependency
19
19
  name: capybara
20
- requirement: &2152940960 !ruby/object:Gem::Requirement
20
+ requirement: &2159329100 !ruby/object:Gem::Requirement
21
21
  none: false
22
22
  requirements:
23
23
  - - ! '>='
@@ -28,10 +28,10 @@ dependencies:
28
28
  version: '1.2'
29
29
  type: :runtime
30
30
  prerelease: false
31
- version_requirements: *2152940960
31
+ version_requirements: *2159329100
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: json
34
- requirement: &2152940280 !ruby/object:Gem::Requirement
34
+ requirement: &2159328400 !ruby/object:Gem::Requirement
35
35
  none: false
36
36
  requirements:
37
37
  - - ! '>='
@@ -39,10 +39,10 @@ dependencies:
39
39
  version: '0'
40
40
  type: :runtime
41
41
  prerelease: false
42
- version_requirements: *2152940280
42
+ version_requirements: *2159328400
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: rspec
45
- requirement: &2152939740 !ruby/object:Gem::Requirement
45
+ requirement: &2159327800 !ruby/object:Gem::Requirement
46
46
  none: false
47
47
  requirements:
48
48
  - - ~>
@@ -50,10 +50,10 @@ dependencies:
50
50
  version: 2.6.0
51
51
  type: :development
52
52
  prerelease: false
53
- version_requirements: *2152939740
53
+ version_requirements: *2159327800
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: sinatra
56
- requirement: &2152939320 !ruby/object:Gem::Requirement
56
+ requirement: &2159327360 !ruby/object:Gem::Requirement
57
57
  none: false
58
58
  requirements:
59
59
  - - ! '>='
@@ -61,10 +61,10 @@ dependencies:
61
61
  version: '0'
62
62
  type: :development
63
63
  prerelease: false
64
- version_requirements: *2152939320
64
+ version_requirements: *2159327360
65
65
  - !ruby/object:Gem::Dependency
66
66
  name: mini_magick
67
- requirement: &2152938860 !ruby/object:Gem::Requirement
67
+ requirement: &2159326880 !ruby/object:Gem::Requirement
68
68
  none: false
69
69
  requirements:
70
70
  - - ! '>='
@@ -72,10 +72,10 @@ dependencies:
72
72
  version: '0'
73
73
  type: :development
74
74
  prerelease: false
75
- version_requirements: *2152938860
75
+ version_requirements: *2159326880
76
76
  - !ruby/object:Gem::Dependency
77
77
  name: rake
78
- requirement: &2152938440 !ruby/object:Gem::Requirement
78
+ requirement: &2159326420 !ruby/object:Gem::Requirement
79
79
  none: false
80
80
  requirements:
81
81
  - - ! '>='
@@ -83,10 +83,10 @@ dependencies:
83
83
  version: '0'
84
84
  type: :development
85
85
  prerelease: false
86
- version_requirements: *2152938440
86
+ version_requirements: *2159326420
87
87
  - !ruby/object:Gem::Dependency
88
88
  name: appraisal
89
- requirement: &2152937940 !ruby/object:Gem::Requirement
89
+ requirement: &2159325860 !ruby/object:Gem::Requirement
90
90
  none: false
91
91
  requirements:
92
92
  - - ~>
@@ -94,7 +94,7 @@ dependencies:
94
94
  version: 0.4.0
95
95
  type: :development
96
96
  prerelease: false
97
- version_requirements: *2152937940
97
+ version_requirements: *2159325860
98
98
  description:
99
99
  email: support@thoughtbot.com
100
100
  executables: []
@@ -123,6 +123,7 @@ files:
123
123
  - lib/capybara-webkit.rb
124
124
  - lib/capybara/driver/webkit.rb
125
125
  - lib/capybara/driver/webkit/browser.rb
126
+ - lib/capybara/driver/webkit/connection.rb
126
127
  - lib/capybara/driver/webkit/cookie_jar.rb
127
128
  - lib/capybara/driver/webkit/node.rb
128
129
  - lib/capybara/driver/webkit/socket_debugger.rb
@@ -132,8 +133,10 @@ files:
132
133
  - lib/capybara_webkit_builder.rb
133
134
  - spec/browser_spec.rb
134
135
  - spec/capybara_webkit_builder_spec.rb
136
+ - spec/connection_spec.rb
135
137
  - spec/cookie_jar_spec.rb
136
138
  - spec/driver_rendering_spec.rb
139
+ - spec/driver_resize_window_spec.rb
137
140
  - spec/driver_spec.rb
138
141
  - spec/integration/driver_spec.rb
139
142
  - spec/integration/session_spec.rb
@@ -168,6 +171,8 @@ files:
168
171
  - src/Header.h
169
172
  - src/Headers.cpp
170
173
  - src/Headers.h
174
+ - src/IgnoreSslErrors.cpp
175
+ - src/IgnoreSslErrors.h
171
176
  - src/JavascriptInvocation.cpp
172
177
  - src/JavascriptInvocation.h
173
178
  - src/NetworkAccessManager.cpp
@@ -176,12 +181,18 @@ files:
176
181
  - src/NetworkCookieJar.h
177
182
  - src/Node.cpp
178
183
  - src/Node.h
184
+ - src/NullCommand.cpp
185
+ - src/NullCommand.h
186
+ - src/PageLoadingCommand.cpp
187
+ - src/PageLoadingCommand.h
179
188
  - src/Render.cpp
180
189
  - src/Render.h
181
190
  - src/RequestedUrl.cpp
182
191
  - src/RequestedUrl.h
183
192
  - src/Reset.cpp
184
193
  - src/Reset.h
194
+ - src/ResizeWindow.cpp
195
+ - src/ResizeWindow.h
185
196
  - src/Response.cpp
186
197
  - src/Response.h
187
198
  - src/Server.cpp
@@ -238,8 +249,10 @@ summary: Headless Webkit driver for Capybara
238
249
  test_files:
239
250
  - spec/browser_spec.rb
240
251
  - spec/capybara_webkit_builder_spec.rb
252
+ - spec/connection_spec.rb
241
253
  - spec/cookie_jar_spec.rb
242
254
  - spec/driver_rendering_spec.rb
255
+ - spec/driver_resize_window_spec.rb
243
256
  - spec/driver_spec.rb
244
257
  - spec/integration/driver_spec.rb
245
258
  - spec/integration/session_spec.rb