angular_webdriver 0.0.7 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +3 -0
- data/.gitmodules +3 -0
- data/.rspec +2 -0
- data/.travis.yml +32 -0
- data/Gemfile +2 -0
- data/Thorfile +33 -1
- data/angular_webdriver.gemspec +10 -3
- data/docs/overview.md +101 -0
- data/docs/sync.md +53 -0
- data/lib/angular_webdriver/protractor/by.rb +331 -0
- data/lib/angular_webdriver/protractor/by_repeater_inner.rb +106 -0
- data/lib/angular_webdriver/protractor/client_side_scripts.rb +1035 -0
- data/lib/angular_webdriver/protractor/protractor.rb +396 -77
- data/lib/angular_webdriver/protractor/protractor_element.rb +33 -0
- data/lib/angular_webdriver/protractor/rspec_helpers.rb +19 -0
- data/lib/angular_webdriver/protractor/watir_patch.rb +209 -0
- data/lib/angular_webdriver/protractor/webdriver_patch.rb +246 -0
- data/lib/angular_webdriver/version.rb +2 -2
- data/lib/angular_webdriver.rb +14 -1
- data/{LICENSE → license/angular_webdriver/LICENSE.txt} +0 -0
- data/{lib/angular_webdriver → license}/protractor/LICENSE.txt +0 -0
- data/{lib/angular_webdriver/protractor/get_url_trace.rb → notes/bootstrap_notes.md} +13 -0
- data/notes/element_by_id/element_by_id_sync_off.txt +12 -0
- data/notes/element_by_id/element_by_id_sync_on.txt +74 -0
- data/notes/element_chaining_debug.txt +94 -0
- data/notes/evaluate/js_evaluate_sync_on.txt +60 -0
- data/notes/evaluate/ruby_evaluate_sync_on.txt +35 -0
- data/notes/get_title/browser_get_title_sync_off.txt +11 -0
- data/notes/get_title/browser_get_title_sync_on.txt +54 -0
- data/notes/phantomjs.md +23 -0
- data/notes/protractor_cli_bugs.txt +39 -0
- data/notes/protractor_get/protractor_get.rb +102 -0
- data/notes/protractor_get/protractor_get_website_sync_off.txt +11 -0
- data/notes/protractor_get/protractor_get_website_sync_on.txt +86 -0
- data/notes/repeater/findAllRepeaterRows_annotated.txt +150 -0
- data/notes/repeater/findAllRepeaterRows_raw.txt +145 -0
- data/notes/repeater/findRepeaterColumn_annotated.txt +317 -0
- data/notes/repeater/findRepeaterColumn_raw.txt +310 -0
- data/notes/repeater/findRepeaterElement_annotated.txt +152 -0
- data/notes/repeater/findRepeaterElement_raw.txt +146 -0
- data/notes/repeater/findRepeaterRows_annotated.txt +156 -0
- data/notes/repeater/findRepeaterRows_raw.txt +152 -0
- data/notes/sync_after.md +46 -0
- data/notes/sync_notes.md +137 -0
- data/notes/synchronize_spec/status_gettext.txt +121 -0
- data/notes/synchronize_spec/status_gettext_x3.txt +451 -0
- data/notes/synchronize_spec/synchronize_spec.js.txt +74 -0
- data/notes/synchronize_spec/watir_gettext.txt +73 -0
- data/readme.md +52 -12
- data/release_notes.md +127 -0
- data/selenium_server/lib/logs.rb +50 -0
- data/selenium_server/lib/selenium_server.rb +21 -0
- data/selenium_server/readme.md +3 -0
- data/selenium_server/spec/logs_spec.rb +18 -0
- data/selenium_server/spec/nodejs_sync_spec_waithttp_annotated.txt +54 -0
- data/selenium_server/spec/nodejs_sync_spec_waithttp_raw.txt +367 -0
- data/selenium_server/spec/nodejs_sync_spec_waithttp_raw_processed.txt +43 -0
- data/selenium_server/spec/ruby_sync_spec_waithttp_annotated.txt +59 -0
- data/selenium_server/spec/ruby_sync_spec_waithttp_raw.txt +267 -0
- data/selenium_server/spec/ruby_sync_spec_waithttp_raw_processed.txt +39 -0
- data/selenium_server/spec/spec_helper.rb +6 -0
- data/selenium_server/spec/status_gettext_x3.txt +429 -0
- data/selenium_server/spec/status_gettext_x3_annotated.txt +86 -0
- metadata +91 -18
- data/lib/angular_webdriver/protractor/clientSideScripts.json +0 -19
- data/lib/angular_webdriver/protractor/clientsidescripts.js +0 -671
- data/lib/angular_webdriver/protractor/scripts.rb +0 -7
- data/lib/angular_webdriver/protractor/scripts_to_json.js +0 -11
- data/spec/protractor_spec.rb +0 -40
- data/spec/spec_helper.rb +0 -5
data/readme.md
CHANGED
@@ -1,13 +1,19 @@
|
|
1
|
-
# angular_webdriver [](https://rubygems.org/gems/angular_webdriver)
|
1
|
+
# angular_webdriver [](https://rubygems.org/gems/angular_webdriver) [](https://travis-ci.org/bootstraponline/angular_webdriver/builds)
|
2
2
|
|
3
3
|
Angular enhancements to the Ruby webdriver bindings based on [protractor](https://github.com/angular/protractor).
|
4
4
|
|
5
|
+
## Docs
|
6
|
+
|
7
|
+
See the [docs](docs/) folder for the documentation.
|
8
|
+
|
5
9
|
## Testing
|
6
10
|
|
7
11
|
Tests run against protractor's [testapp](https://github.com/angular/protractor/blob/19b4bf21525a683c8cc3ba21018c194cac9b6426/testapp/index.html).
|
8
12
|
|
9
|
-
|
10
|
-
|
13
|
+
The **latest** versions of Chrome and Firefox are required. The tests will
|
14
|
+
not run on old versions.
|
15
|
+
|
16
|
+
- `cd protractor/testapp; npm install`
|
11
17
|
- `npm start` Test app will start on `http://localhost:8081/`
|
12
18
|
|
13
19
|
## Protractor CLI
|
@@ -18,22 +24,56 @@ Notes about protractor / angular testing.
|
|
18
24
|
|
19
25
|
[Protractor's Element Explorer](https://github.com/angular/protractor/blob/master/docs/debugging.md)
|
20
26
|
|
27
|
+
- `npm install -g protractor` Install protractor
|
21
28
|
- `webdriver-manager update` Install webdriver jar
|
22
29
|
- `protractor --elementExplorer` Start protractor repl
|
23
30
|
- `.exit` Exit REPL session
|
24
31
|
|
25
|
-
View server logs
|
32
|
+
#### View server logs
|
33
|
+
|
34
|
+
Startup selenium server using the jar or webdriver manager.
|
35
|
+
|
36
|
+
- `java -jar selenium-server-standalone-2.45.0.jar`
|
37
|
+
- `webdriver-manager start`
|
38
|
+
|
39
|
+
Start element explorer using the standalone server to see the logs (protractor v2.1.0 or newer).
|
40
|
+
|
41
|
+
> protractor --elementExplorer --browser firefox --seleniumAddress http://127.0.0.1:4444/wd/hub
|
42
|
+
|
43
|
+
Alternatively, run from source:
|
44
|
+
|
45
|
+
> node ./protractor/bin/webdriver-manager update
|
46
|
+
>
|
47
|
+
> node ./protractor/bin/protractor --elementExplorer --browser firefox --seleniumAddress http://127.0.0.1:4444/wd/hub
|
48
|
+
>
|
49
|
+
> browser.get('https://angularjs.org/')
|
50
|
+
|
51
|
+
|
52
|
+
#### Run individual protractor test
|
53
|
+
|
54
|
+
- `cd protractor/; node lib/cli.js spec/basicConf.js`
|
55
|
+
|
56
|
+
Modify basicConf to target only the single spec.
|
57
|
+
|
58
|
+
```
|
59
|
+
specs: [
|
60
|
+
'basic/synchronize_spec.js'
|
61
|
+
],
|
62
|
+
```
|
63
|
+
|
64
|
+
Modify environment.js to default to firefox.
|
26
65
|
|
27
|
-
|
28
|
-
|
29
|
-
|
66
|
+
```
|
67
|
+
'browserName':
|
68
|
+
(process.env.TEST_BROWSER_NAME || 'firefox'),
|
69
|
+
```
|
30
70
|
|
31
|
-
|
71
|
+
Make sure the test app is running.
|
32
72
|
|
33
|
-
|
34
|
-
- [node >0.10.30 is broken and 0.12 doesn't work at all](https://github.com/angular/protractor/issues/1970#issuecomment-89371944)
|
73
|
+
#### Installing node
|
35
74
|
|
36
75
|
Use [nvm](https://github.com/creationix/nvm) to manage node versions
|
37
76
|
|
38
|
-
- `brew install nvm`
|
39
|
-
- `nvm install
|
77
|
+
- `brew install nvm` Update `~/.bash_profile` as instructed
|
78
|
+
- `nvm install stable` Install latest stable version of node
|
79
|
+
- `nvm alias default stable` Set stable as the default node for new terminals
|
data/release_notes.md
CHANGED
@@ -1,3 +1,130 @@
|
|
1
|
+
#### v1.0.0 2015-06-06
|
2
|
+
|
3
|
+
- [8291152](https://github.com/bootstraponline/angular_webdriver/commit/82911526e99411420ef5bde4cc5dba652cc514ed) Release 1.0.0
|
4
|
+
- [d80a6d4](https://github.com/bootstraponline/angular_webdriver/commit/d80a6d4dd6d7ef386d174a688c545597b9433fd4) Fix successfully converts selenium elements to json
|
5
|
+
- [94e8796](https://github.com/bootstraponline/angular_webdriver/commit/94e8796a57378debc6c21bfbf4c893e435534f1f) Update selenium-webdriver to 2.46.2
|
6
|
+
- [4e22c74](https://github.com/bootstraponline/angular_webdriver/commit/4e22c7420356d4e1a3d96be7ad5866b4d6186ad7) Fix gem dependencies
|
7
|
+
- [d2c0cfb](https://github.com/bootstraponline/angular_webdriver/commit/d2c0cfb5f5d5efdd1929e3b0189f78c51e189bf1) Execute thor compare on Travis
|
8
|
+
- [b36d114](https://github.com/bootstraponline/angular_webdriver/commit/b36d11493d05d5fc2f244b42d71b53ec4942fcbe) Update compare_specs.rb
|
9
|
+
- [a912aaa](https://github.com/bootstraponline/angular_webdriver/commit/a912aaaa2ecc5210abb8985423697455b19c8a49) Run on local browser when remote doesn't exist
|
10
|
+
- [ed80fbd](https://github.com/bootstraponline/angular_webdriver/commit/ed80fbd7ecf1ca86da5f2f76bc11782799f71f2e) Update elements_spec
|
11
|
+
- [186618b](https://github.com/bootstraponline/angular_webdriver/commit/186618bbd56eeff88dbe08ae74b9cc11ca18b908) Compare JS describes to Ruby describes
|
12
|
+
- [1ff1018](https://github.com/bootstraponline/angular_webdriver/commit/1ff101831117616912bce7551ca7a627ce99666b) Fix spec
|
13
|
+
- [8e8baa8](https://github.com/bootstraponline/angular_webdriver/commit/8e8baa8a79e79dbff357f36b1cfa7fe348044fe2) Fix watir infinite retry
|
14
|
+
- [2612c7b](https://github.com/bootstraponline/angular_webdriver/commit/2612c7bf8aaba4ba24e4142d5bbf0752438c7bfe) Update tracing helper
|
15
|
+
- [e2f1b1d](https://github.com/bootstraponline/angular_webdriver/commit/e2f1b1d7933944b228f2980da28a09b056630c67) Finish ElementFinder tests
|
16
|
+
- [ab3d780](https://github.com/bootstraponline/angular_webdriver/commit/ab3d7802e643da3cc762f18b721596ccc4b2e269) Add watir element.locator
|
17
|
+
- [fdff1fe](https://github.com/bootstraponline/angular_webdriver/commit/fdff1feb577027ef8c58a6cdd36bf0802c1fc35d) Remove global/object methods
|
18
|
+
- [92cda8d](https://github.com/bootstraponline/angular_webdriver/commit/92cda8deda7ae418873f7e980c41824dd7a6f51c) Add by.deepCss
|
19
|
+
- [23f35ff](https://github.com/bootstraponline/angular_webdriver/commit/23f35ff5b7b541e18508108af4895970a3fdfcc3) Add by.exactBinding
|
20
|
+
- [192083a](https://github.com/bootstraponline/angular_webdriver/commit/192083ad041dc36a53ba908f369cbf1dc94c0ff4) Test present? and displayed?
|
21
|
+
- [5071dda](https://github.com/bootstraponline/angular_webdriver/commit/5071dda1e8991d7d9b2c67ae416eba43dcb74e37) Update locator docs
|
22
|
+
- [72643a2](https://github.com/bootstraponline/angular_webdriver/commit/72643a2b0a93a693ed84c0b0dc5673ae47a38ca4) Add by.repeater and by.exactRepeater
|
23
|
+
- [428aab9](https://github.com/bootstraponline/angular_webdriver/commit/428aab9830b008c1dde1f485d148386c653943b4) Add repeater notes
|
24
|
+
- [2fa09a0](https://github.com/bootstraponline/angular_webdriver/commit/2fa09a0e96bc464e5067e6f5becfa4bfa2b332e6) Refactor protractor_compatability into by & element
|
25
|
+
- [a27bbfe](https://github.com/bootstraponline/angular_webdriver/commit/a27bbfea09713fb821eafc28563957e5a09d56c8) Add by.cssContainingText
|
26
|
+
- [e23b615](https://github.com/bootstraponline/angular_webdriver/commit/e23b615c1d2b7ce01a28e3b6f8fcda7a4b4aa4cd) Add by.options
|
27
|
+
- [44f7b67](https://github.com/bootstraponline/angular_webdriver/commit/44f7b67bc13b292f8df06df038c89c3eacc87517) Update docs
|
28
|
+
- [353e14e](https://github.com/bootstraponline/angular_webdriver/commit/353e14e60209d1622a3b7c3538d811673db8e466) Add by.model
|
29
|
+
- [67641fe](https://github.com/bootstraponline/angular_webdriver/commit/67641feb3e772f10f75768144eccc84522ed00ec) Add by.buttonText
|
30
|
+
- [8ff4393](https://github.com/bootstraponline/angular_webdriver/commit/8ff43934051f2ce87256e067d315a0d2f16eec00) Rename set_wait to set_max_wait
|
31
|
+
- [3515f6b](https://github.com/bootstraponline/angular_webdriver/commit/3515f6b5fa0e36fe8fb5917f78a4c6411d491475) Document evaluate method
|
32
|
+
- [d1be5cb](https://github.com/bootstraponline/angular_webdriver/commit/d1be5cbb44a21eb83e8e1dc11ca191ec0cd8cc41) Document protractor semantics
|
33
|
+
- [70636cf](https://github.com/bootstraponline/angular_webdriver/commit/70636cf658ecb5477b544e5daf8ecb6408415a0a) Add find by partialButtonText
|
34
|
+
- [1f5382e](https://github.com/bootstraponline/angular_webdriver/commit/1f5382e768d73e500b5723063efd253f6e9c7e86) Refactor spec helpers. Move patches out of spec
|
35
|
+
- [74a999b](https://github.com/bootstraponline/angular_webdriver/commit/74a999b93e0b20daa43e87bcbf93ffb1182ec380) Add evaluate
|
36
|
+
- [c37f0cb](https://github.com/bootstraponline/angular_webdriver/commit/c37f0cb3c5529a485b98f04b029c1326a48414f1) Add evaluate notes
|
37
|
+
- [cccfd09](https://github.com/bootstraponline/angular_webdriver/commit/cccfd09b2b79b309a7a10fa10a71635ca41ea6cd) Link Travis badge to build history
|
38
|
+
- [14a1f8f](https://github.com/bootstraponline/angular_webdriver/commit/14a1f8f9e245374b8ac635f997fa4218fb6fb38b) Set page load timeout. Add phantomjs note
|
39
|
+
- [ee18e45](https://github.com/bootstraponline/angular_webdriver/commit/ee18e456f3d5bddf28adcf3361a83f125c2c5c3f) Add client wait to replace implicit wait
|
40
|
+
- [527f5cb](https://github.com/bootstraponline/angular_webdriver/commit/527f5cbffd53d097a6c2a68e7aae875a02048289) Add testForAngular
|
41
|
+
- [9083fef](https://github.com/bootstraponline/angular_webdriver/commit/9083fefb38f64d811e4d78c126c33c332a3f36c1) Add allowAnimations and fix element.present?
|
42
|
+
- [a4bfa21](https://github.com/bootstraponline/angular_webdriver/commit/a4bfa21c3cdb8f4c5da92c361a4f740394fadec8) Use implicit wait for Protractor locators
|
43
|
+
- [d65091f](https://github.com/bootstraponline/angular_webdriver/commit/d65091f8a21c6ebb11954ef3ae9d7bcbcb93770c) Fix protractor syntax
|
44
|
+
- [bc3e5cf](https://github.com/bootstraponline/angular_webdriver/commit/bc3e5cf5fe3a046397b0cdf1a833928d4b6c16c8) Set 10 second implicit wait
|
45
|
+
- [9e7d5c7](https://github.com/bootstraponline/angular_webdriver/commit/9e7d5c7baae476de1826d0c42f864b03353250ca) Port basic/actions_spec
|
46
|
+
- [19a861d](https://github.com/bootstraponline/angular_webdriver/commit/19a861d59b0d329e03d80edbb560dd5a81d6c0d5) Move notes
|
47
|
+
- [9f5346e](https://github.com/bootstraponline/angular_webdriver/commit/9f5346e5763d392c6c9898d1d8ff597e2bd42c3d) Update protractor
|
48
|
+
- [bef8432](https://github.com/bootstraponline/angular_webdriver/commit/bef84326c210c5ae1326684f1ef7190e61875833) Fix angular_webdriver
|
49
|
+
- [a155cbc](https://github.com/bootstraponline/angular_webdriver/commit/a155cbc2db092e7329de9cdca827ae1acf20faf1) Add notes
|
50
|
+
- [f070aba](https://github.com/bootstraponline/angular_webdriver/commit/f070abaccda4f68163c4ac15b58abbb63d955299) Add txt logs
|
51
|
+
- [117c062](https://github.com/bootstraponline/angular_webdriver/commit/117c062707df0aac868cd371e69f99f6b9d2ddac) Remove internal method from docs
|
52
|
+
- [b1c71c1](https://github.com/bootstraponline/angular_webdriver/commit/b1c71c11637f8daba55594dbc3e135b75ecc6e3c) Update docs
|
53
|
+
- [d5e4ab7](https://github.com/bootstraponline/angular_webdriver/commit/d5e4ab7e3206492716bdeae129ab1df1feb84ecc) Link to docs
|
54
|
+
- [cf5706c](https://github.com/bootstraponline/angular_webdriver/commit/cf5706cca12fc98767938e9cf07f5ba8172b2849) Add docs
|
55
|
+
- [dd33a99](https://github.com/bootstraponline/angular_webdriver/commit/dd33a99f3c5fc55e59c7198a99b83978bfc2b79a) Clean up protractor_spec
|
56
|
+
- [f93df2f](https://github.com/bootstraponline/angular_webdriver/commit/f93df2f6c7d75c5022731af360bf8b100c4c49ef) Update comment style to match Selenium
|
57
|
+
- [5b1240d](https://github.com/bootstraponline/angular_webdriver/commit/5b1240d3f221fb15f869a698a055ce81da2d14d7) Default base_url to nil. Fix client_side_scripts test
|
58
|
+
- [44ba223](https://github.com/bootstraponline/angular_webdriver/commit/44ba22331b373318a7b868de6a74ca2030d96233) Test ignore_sync, client_side_scripts, and base_url
|
59
|
+
- [14e35b5](https://github.com/bootstraponline/angular_webdriver/commit/14e35b566434b8ae6c16ebbec61e9728746cfc26) Update test description
|
60
|
+
- [d6b141b](https://github.com/bootstraponline/angular_webdriver/commit/d6b141b993f91ec94adbfff79175c39e67fd3217) Test driver, reset_url, reset_url_for_browser
|
61
|
+
- [f2945ca](https://github.com/bootstraponline/angular_webdriver/commit/f2945cae5ec3d89b30ac7612035969622461480f) Test debugger
|
62
|
+
- [1342439](https://github.com/bootstraponline/angular_webdriver/commit/13424399f01d4e1518507875de202aaab94f205a) Test executeScript_
|
63
|
+
- [70c9813](https://github.com/bootstraponline/angular_webdriver/commit/70c9813a06ec4ff4b1346ceeab399c9a815bb10b) Test executeAsyncScript_
|
64
|
+
- [110d551](https://github.com/bootstraponline/angular_webdriver/commit/110d551ff30910f852dd4728001841a89b6be873) Test _js_comment
|
65
|
+
- [a6a0cde](https://github.com/bootstraponline/angular_webdriver/commit/a6a0cde85a477cff5a57177d65063fd1c63fd269) Test method sync
|
66
|
+
- [b30e006](https://github.com/bootstraponline/angular_webdriver/commit/b30e006ce70d63eaec7633d78f0bf3e119d1bb0b) Test getLocationAbsUrl
|
67
|
+
- [b6ebe5d](https://github.com/bootstraponline/angular_webdriver/commit/b6ebe5d6c4164f9cf9a8981627023a71dfea4d55) Fix setLocation
|
68
|
+
- [d0cf2f5](https://github.com/bootstraponline/angular_webdriver/commit/d0cf2f56c2ac3326f044a83d5df69e06b7b34c06) Update .travis.yml
|
69
|
+
- [83c10d8](https://github.com/bootstraponline/angular_webdriver/commit/83c10d89339ade55785a60050bb660d2336eda69) Update .travis.yml
|
70
|
+
- [2bc9785](https://github.com/bootstraponline/angular_webdriver/commit/2bc97851593bace12a7c60d692084ea046ae080c) Add more specs
|
71
|
+
- [0ac13fc](https://github.com/bootstraponline/angular_webdriver/commit/0ac13fc8f26a2fdee1badc7a414b87619965b767) Update client side scripts
|
72
|
+
- [a4bad05](https://github.com/bootstraponline/angular_webdriver/commit/a4bad05a08a7ca7339dc1c3dc0190c0c565d0863) Fix specs
|
73
|
+
- [2230374](https://github.com/bootstraponline/angular_webdriver/commit/2230374e116893d4ce654b9c7e787fb8e9c19377) Port more protractor code
|
74
|
+
- [b5581ec](https://github.com/bootstraponline/angular_webdriver/commit/b5581ec4b4c02cb209e24c51d2a36e81d63ce63b) Update readme.md
|
75
|
+
- [bd842d1](https://github.com/bootstraponline/angular_webdriver/commit/bd842d1157d7ac6d5faa39f9c3aff732d5c5af79) Update readme.md
|
76
|
+
- [0d36ce7](https://github.com/bootstraponline/angular_webdriver/commit/0d36ce7865371e6dbb1f5c53a3bb5f7cfc20f5ef) Attach protractor instance to selenium driver
|
77
|
+
- [b8c5b49](https://github.com/bootstraponline/angular_webdriver/commit/b8c5b49c9ee098ab1ae061af6fb696a88c035ef6) Update notes
|
78
|
+
- [486831b](https://github.com/bootstraponline/angular_webdriver/commit/486831ba8514c9b506182760478ab6cf12d8b18a) Update readme.md
|
79
|
+
- [c56f860](https://github.com/bootstraponline/angular_webdriver/commit/c56f86014f763c2aa545cfc72cbe5f628dd791fd) Update readme for new protractor
|
80
|
+
- [4d64b90](https://github.com/bootstraponline/angular_webdriver/commit/4d64b9011a07ecb2c5169fee1115bb6ba6241700) Update .travis.yml
|
81
|
+
- [2e9b3c2](https://github.com/bootstraponline/angular_webdriver/commit/2e9b3c2da2d677968a1559b9e0bf39f090da18f8) Update .travis.yml
|
82
|
+
- [1056d51](https://github.com/bootstraponline/angular_webdriver/commit/1056d510d69a3f60f2141275cef550289d020d26) Update client side scripts
|
83
|
+
- [ee32a15](https://github.com/bootstraponline/angular_webdriver/commit/ee32a15187869b54062fe536145f12c8b2901bd5) Update protractor
|
84
|
+
- [e3fd4e0](https://github.com/bootstraponline/angular_webdriver/commit/e3fd4e021e9ab4e18177f5689c8ba0a2e17a1418) Update readme.md
|
85
|
+
- [40c6a36](https://github.com/bootstraponline/angular_webdriver/commit/40c6a36e8472307181887c98c966ee2794e6ef2e) Execute thor gen on Travis before thor spec
|
86
|
+
- [83fee9d](https://github.com/bootstraponline/angular_webdriver/commit/83fee9d666931155f7f61dab007ac02fde11f9fd) Fix client_side_scripts_spec
|
87
|
+
- [542b203](https://github.com/bootstraponline/angular_webdriver/commit/542b2030bd5e8729a34f437686e2ae2c3705b617) Require angular_webdriver/version
|
88
|
+
- [699aeba](https://github.com/bootstraponline/angular_webdriver/commit/699aeba3d2dfb180288ac0c1bbb8f35afeb7efdf) Exclude gen folder from gemfile
|
89
|
+
- [f6162ec](https://github.com/bootstraponline/angular_webdriver/commit/f6162ec489fac8577ba36a656438277620f5d119) Update generated files
|
90
|
+
- [bad85d4](https://github.com/bootstraponline/angular_webdriver/commit/bad85d4a9e992d5af6fd026772f819b2e3700b2f) Fix thor gen and add gen folder
|
91
|
+
- [aa5c630](https://github.com/bootstraponline/angular_webdriver/commit/aa5c6305d757d6a6a74ff01193a2d5a3b461063a) Update notes
|
92
|
+
- [fa837dd](https://github.com/bootstraponline/angular_webdriver/commit/fa837dd7f7781cbbad4d273d64eb8ca82bae806f) Move licenses to license folder
|
93
|
+
- [036f232](https://github.com/bootstraponline/angular_webdriver/commit/036f2323c5788e73621edc475c3c5726ae046045) Remove old files
|
94
|
+
- [4231f40](https://github.com/bootstraponline/angular_webdriver/commit/4231f404b60d0b72f78211ed9b99a6167254a20e) Restore npm install
|
95
|
+
- [98114b8](https://github.com/bootstraponline/angular_webdriver/commit/98114b864c976ea1637f62e9264d1b190d040081) Test on local firefox instead of remote
|
96
|
+
- [db0e187](https://github.com/bootstraponline/angular_webdriver/commit/db0e187c2523c55c993f705f30ec53e05f50ed01) Update .travis.yml
|
97
|
+
- [a823e56](https://github.com/bootstraponline/angular_webdriver/commit/a823e56196b43883a04b3b1d22064a0db609a785) Update .travis.yml
|
98
|
+
- [001abdb](https://github.com/bootstraponline/angular_webdriver/commit/001abdbb4ee07a2a900b40189d04dc3dbd7ae497) Update .travis.yml
|
99
|
+
- [4c57ccf](https://github.com/bootstraponline/angular_webdriver/commit/4c57ccf62104740cbe173d7e3d9664ae9e08d082) Update .travis.yml
|
100
|
+
- [dd1a028](https://github.com/bootstraponline/angular_webdriver/commit/dd1a028b91a768b4dc2c851e3dad7f6b54154ef6) Update .travis.yml
|
101
|
+
- [6de0748](https://github.com/bootstraponline/angular_webdriver/commit/6de0748faef9ae2a5bef715cdfc5bc0c9892ba51) Update .travis.yml
|
102
|
+
- [f278745](https://github.com/bootstraponline/angular_webdriver/commit/f278745da5d135ff433bd3ee8bf45e48ddb894a1) Update .travis.yml
|
103
|
+
- [9eab2f1](https://github.com/bootstraponline/angular_webdriver/commit/9eab2f18814bb6cdc28e2c17f30f1b65257ad183) Update node to 0.12
|
104
|
+
- [61589d3](https://github.com/bootstraponline/angular_webdriver/commit/61589d37a1b4824a4e43434c96aa4bbc0d0241fb) Update .travis.yml
|
105
|
+
- [af524a9](https://github.com/bootstraponline/angular_webdriver/commit/af524a94ac8329c616c78a6b07d8b34d65a6689f) Update travis to start Protractor testapp server
|
106
|
+
- [961e2b4](https://github.com/bootstraponline/angular_webdriver/commit/961e2b4b3664583e6808de750a77ba56bc635420) Add find by binding
|
107
|
+
- [a64c389](https://github.com/bootstraponline/angular_webdriver/commit/a64c389e29c0d77bae2946e63acfbfe14b6e6c63) Update readme.md
|
108
|
+
- [f5bb50e](https://github.com/bootstraponline/angular_webdriver/commit/f5bb50e68333827c083d5dcc972c1d7e229b93b9) Update whitespace removal
|
109
|
+
- [ff259c6](https://github.com/bootstraponline/angular_webdriver/commit/ff259c6a492d700151cc6d6dc82a3f11d14a6dd2) Use /* */ for comments instead of //
|
110
|
+
- [de2aa2d](https://github.com/bootstraponline/angular_webdriver/commit/de2aa2d4e31388db3bf18c36432f8151be0df990) Exclude protractor submodule from gem
|
111
|
+
- [231d588](https://github.com/bootstraponline/angular_webdriver/commit/231d588882235e3c6415eb18702a99e24eccbbc8) Add protractor as submodule
|
112
|
+
- [eaef06a](https://github.com/bootstraponline/angular_webdriver/commit/eaef06a8037fc43b8349556afd22337d83a58414) Test client side scripts
|
113
|
+
- [7da6eae](https://github.com/bootstraponline/angular_webdriver/commit/7da6eae37a70bc6931d424225f0416da92f7cbfe) Define attr readers
|
114
|
+
- [2971c56](https://github.com/bootstraponline/angular_webdriver/commit/2971c56612c1439e3c261c7e1c8d66a40b50b51b) Remove ostruct
|
115
|
+
- [6ea09f0](https://github.com/bootstraponline/angular_webdriver/commit/6ea09f0eef3be69fbc4104ce31adc8aa62bda9bc) Convert json to ruby
|
116
|
+
- [93cef89](https://github.com/bootstraponline/angular_webdriver/commit/93cef8986ac7ad3b5f66a0ed494c35fc9b2b3801) Always use wait with waitForAngular
|
117
|
+
- [794df2f](https://github.com/bootstraponline/angular_webdriver/commit/794df2fcf4f197cf48a8c654ce0321e62cac9b03) Add Travis badge
|
118
|
+
- [d04d710](https://github.com/bootstraponline/angular_webdriver/commit/d04d71084bfc11b9550dabd9caba3938a3fb1636) Fix tests
|
119
|
+
- [5d47395](https://github.com/bootstraponline/angular_webdriver/commit/5d47395fcf3b4169757fbdfc54c8498b6a8d6311) Add fail to test travis ci
|
120
|
+
- [67dea63](https://github.com/bootstraponline/angular_webdriver/commit/67dea636ca4ab77ffae37c82aed85123088fd07c) Try using xvfb
|
121
|
+
- [a6f835e](https://github.com/bootstraponline/angular_webdriver/commit/a6f835ef730c977ec75442fcb5538acd404c5fd2) Add nil driver check
|
122
|
+
- [19fde47](https://github.com/bootstraponline/angular_webdriver/commit/19fde47cb285431ce274a0b025736b105fada884) Update spec
|
123
|
+
- [2554992](https://github.com/bootstraponline/angular_webdriver/commit/25549924bc0d7c13deab1edcee7bcd681bde820c) Add thor spec
|
124
|
+
- [5ddfb2c](https://github.com/bootstraponline/angular_webdriver/commit/5ddfb2c3a979c9ed51b9fcb82ed9242b522f7f2f) Add thor to Gemfile
|
125
|
+
- [ca3db63](https://github.com/bootstraponline/angular_webdriver/commit/ca3db630e8baf04b722eb736839f6aef119b5e38) Create .travis.yml
|
126
|
+
|
127
|
+
|
1
128
|
#### v0.0.7 2015-05-12
|
2
129
|
|
3
130
|
- [8ad96c7](https://github.com/bootstraponline/angular_webdriver/commit/8ad96c7c6895502fb41f8e8930a5cd010f51dfef) Release 0.0.7
|
@@ -0,0 +1,50 @@
|
|
1
|
+
class Logs
|
2
|
+
# todo: write custom Java logger for selenium standalone
|
3
|
+
# so that the logging data isn't such a mess.
|
4
|
+
def self.process angular_log
|
5
|
+
angular_log = angular_log.split(/\r?\n/)
|
6
|
+
|
7
|
+
angular_log.each_index do |index|
|
8
|
+
line = angular_log[index]
|
9
|
+
|
10
|
+
# raw:
|
11
|
+
# 15:51:00.940 INFO [1] org.openqa.grid.selenium.GridLauncher - Launching a standalone server
|
12
|
+
#
|
13
|
+
# matched:
|
14
|
+
# "15:51:00.940 INFO [1] org.openqa.grid.selenium.GridLauncher - "
|
15
|
+
|
16
|
+
text_to_remove = line.match(/^\d{2}:\d{2}:\d{2}\.\d{3} [A-Z]+ \[\d+\] [^-]+ - /)
|
17
|
+
|
18
|
+
if text_to_remove
|
19
|
+
text_to_remove = text_to_remove.to_s
|
20
|
+
line = line.sub text_to_remove, ''
|
21
|
+
|
22
|
+
angular_log[index] = line
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
# now we have a giant blob of text
|
27
|
+
angular_log = angular_log.compact.join("\n")
|
28
|
+
|
29
|
+
match_script = lambda do |script, comment|
|
30
|
+
angular_log.gsub!(script, comment)
|
31
|
+
end
|
32
|
+
|
33
|
+
scripts = ClientSideScripts
|
34
|
+
|
35
|
+
# pattern match and gsub out the known client side scripts
|
36
|
+
match_script.(scripts.test_for_angular, 'Protractor.testForAngular')
|
37
|
+
match_script.(scripts.wait_for_angular, 'Protractor.waitForAngular')
|
38
|
+
match_script.(scripts.find_bindings, 'Protractor by.binding')
|
39
|
+
|
40
|
+
# .*? is a non-greedy match. will only match until the first 'Executing:'
|
41
|
+
# without ? it'll greedily match through multiple 'Executing:'
|
42
|
+
angular_log.gsub!(/(Done: .*?)\nExecuting:/m) do
|
43
|
+
full = Regexp.last_match[0] # full_match
|
44
|
+
group1 = Regexp.last_match[1] # group match
|
45
|
+
full.sub(group1, '').strip
|
46
|
+
end
|
47
|
+
|
48
|
+
angular_log
|
49
|
+
end
|
50
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'posix/spawn'
|
3
|
+
|
4
|
+
require_relative 'logs'
|
5
|
+
|
6
|
+
logfile = 'log.txt'
|
7
|
+
File.delete logfile if File.exist? logfile
|
8
|
+
|
9
|
+
# the driver logs are different (driver.manage.logs.get(:driver)),
|
10
|
+
# better to spin up the jar and read logs from the output file
|
11
|
+
cmd = "java -jar selenium-server-standalone-2.45.0.jar -log #{logfile}"
|
12
|
+
|
13
|
+
puts cmd
|
14
|
+
|
15
|
+
begin
|
16
|
+
POSIX::Spawn::Child.new cmd
|
17
|
+
rescue Interrupt
|
18
|
+
puts 'Server shutdown'
|
19
|
+
end
|
20
|
+
|
21
|
+
Logs.new(logfile).process
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require_relative 'spec_helper'
|
2
|
+
|
3
|
+
describe 'logs' do
|
4
|
+
it 'processes correctly' do
|
5
|
+
targets = ['ruby_sync_spec_waithttp_raw.txt', 'nodejs_sync_spec_waithttp_raw.txt']
|
6
|
+
|
7
|
+
targets.each do |target|
|
8
|
+
angular_log = File.read File.join __dir__, target
|
9
|
+
|
10
|
+
output_filename = target.sub(File.extname(target), '') + '_processed.txt'
|
11
|
+
output_file = File.join __dir__, output_filename
|
12
|
+
|
13
|
+
File.open output_file, 'w' do |file|
|
14
|
+
file.write Logs.process angular_log
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
beforeEach(function() {
|
2
|
+
browser.get('index.html#/async');
|
3
|
+
});
|
4
|
+
|
5
|
+
it('waits for http calls', function() {
|
6
|
+
var status = element(by.binding('slowHttpStatus'));
|
7
|
+
var button = element(by.css('[ng-click="slowHttp()"]'));
|
8
|
+
|
9
|
+
expect(status.getText()).toEqual('not started');
|
10
|
+
|
11
|
+
button.click();
|
12
|
+
|
13
|
+
expect(status.getText()).toEqual('done');
|
14
|
+
});
|
15
|
+
|
16
|
+
---
|
17
|
+
|
18
|
+
Executing: [new session: Capabilities [{count=1, browserName=firefox, version=ANY}]])
|
19
|
+
Creating a new session for Capabilities [{count=1, browserName=firefox, version=ANY}]
|
20
|
+
Executing: [set script timeoutt: 11000])
|
21
|
+
|
22
|
+
// get http://localhost:8081/index.html#/async
|
23
|
+
Executing: [get: data:text/html,<html></html>])
|
24
|
+
Executing: [execute script: window.name = "NG_DEFER_BOOTSTRAP!" + window.name;window.location.replace("http://localhost:8081/index.html#/async");, []])
|
25
|
+
Executing: [execute script: return window.location.href;, []])
|
26
|
+
Executing: [execute async script: Protractor.testForAngular, [10]])
|
27
|
+
Executing: [execute script: return (function () {
|
28
|
+
angular.module('protractorBaseModule_', []).
|
29
|
+
config(['$compileProvider', function($compileProvider) {
|
30
|
+
if ($compileProvider.debugInfoEnabled) {
|
31
|
+
$compileProvider.debugInfoEnabled(true);
|
32
|
+
}
|
33
|
+
}]);
|
34
|
+
}).apply(null, arguments);, []])
|
35
|
+
Executing: [execute script: angular.resumeBootstrap(arguments[0]);, [[protractorBaseModule_]]])
|
36
|
+
|
37
|
+
// waitForAngular, by.binding slowHttpStatus, get text
|
38
|
+
Executing: [execute async script: Protractor.waitForAngular, [body]])
|
39
|
+
Executing: [execute script: Protractor by.binding, [slowHttpStatus, false, null, body]])
|
40
|
+
Executing: [get text: 0 [org.openqa.selenium.remote.RemoteWebElement@777b0873 -> unknown locator]])
|
41
|
+
|
42
|
+
// waitForAngular, by.css ng-click slowHttp, click
|
43
|
+
Executing: [execute async script: Protractor.waitForAngular, [body]])
|
44
|
+
Executing: [find elements: By.cssSelector: [ng-click="slowHttp()"]])
|
45
|
+
Executing: [click: 1 [[FirefoxDriver: firefox on MAC (9b861296-469c-8343-bf13-3ea3a8727281)] -> css selector: [ng-click="slowHttp()"]]])
|
46
|
+
|
47
|
+
// waitForAngular, by.binding slowHttpStatus, get text
|
48
|
+
Executing: [execute async script: Protractor.waitForAngular, [body]])
|
49
|
+
Executing: [execute script: Protractor by.binding, [slowHttpStatus, false, null, body]])
|
50
|
+
Executing: [get text: 0 [org.openqa.selenium.remote.RemoteWebElement@777b0873 -> unknown locator]])
|
51
|
+
|
52
|
+
Executing: [delete session: 328e9486-cabe-4967-aefb-cee3ae3c250b])
|
53
|
+
Done: [delete session: 328e9486-cabe-4967-aefb-cee3ae3c250b]
|
54
|
+
Shutting down...
|