protractor-rails 0.0.2 → 0.0.3.pre.alpha

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c2d19507f5e5cad0d7b0637528266cd95a11b7fb
4
- data.tar.gz: 556d7f32fd514d753a44cd5cedbe95b57e1678a0
3
+ metadata.gz: e6f03720412a3f8fc6787ca747cb3fe28b025217
4
+ data.tar.gz: 1c26cf1698d96e2e4fdd3bce8d8ebd739b63ae04
5
5
  SHA512:
6
- metadata.gz: 967de443c66e8bf2cfad70734b0afab04a43b5aad6c5c192d10e665271fa1736cfd9e0666c55b0a25bd65b2ec2212033ade3e51e512ccf9fc15c52ca1d45bd35
7
- data.tar.gz: 2bc78a1f6fa73387298da3bf04b01f5a55ed9ac16b2b56899c5d2eb909b118816d8180ea77619ed71646b248cda9b97fbf5f4bb0f9c97195d35d54a2655072eb
6
+ metadata.gz: 71f1d12ed657772737cc6f7a02e148bed79f0a8a4227b95031754d5ca504bc84220fbf49ab72d1c29abe2bdba32c56ae2e4548a444739116226fd6ee8fc9fc34
7
+ data.tar.gz: 3d432682563e6de3d6db220e6522e2875e8cf4a690d15b9d8e59d53f4758c87e681d743d4e2abd6dc4ab9022ab150727d7ab8ecf41090638821a5919b02bc472
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- protractor-rails (0.0.2)
4
+ protractor-rails (0.0.3.pre.alpha)
5
5
  colorize
6
6
  railties
7
7
 
data/README.md CHANGED
@@ -1,8 +1,6 @@
1
1
  # Protractor::Rails
2
2
 
3
- This gem helps you to not go through the same pain that I did trying to figure out the best way to run angularjs e2e tests in a rails application.
4
-
5
- NB: This gem is in pre-release so don't use it yet.
3
+ This gem helps you seemlessly setup, run and maintain a angularjs e2e test suite using protractor in a rails application.
6
4
 
7
5
  ## Installation
8
6
 
@@ -25,6 +23,76 @@ NB: This uses `sudo` so you will need to enter your password
25
23
 
26
24
  ## Usage
27
25
 
26
+ ### Initialization
27
+
28
+ You can initialize your app with protractor rails by running
29
+
30
+ $ rake protractor:init
31
+
32
+ ### Dummy test in local environment
33
+
34
+ This will generate and template configuration and a dummy example test. Once you have run this you can test that
35
+ everything has been set up correctly in your local environment by running the following command:
36
+
37
+ $ rake protractor:spec
38
+
39
+ This will run a local rails test server, the webdriver selenium server and run protractor against the example_spec.js
40
+ If everything starts up and runs cleanly you should see the test summary of 1 test 1 pass and 0 failures.
41
+
42
+ ### Running your tests
43
+
44
+ When the `rake protractor:init` script is run it will create a file `spec/javascripts/protractor.conf.js`. This file is where you
45
+ can configure the tests that should be run. [See Protractor Documentation for more details]:https://github.com/angular/protractor/blob/master/docs/getting-started.md.
46
+
47
+ In this file you can provide patterns for matching your protractor specs. **NB: It is recommended that you use a subdirectory such as spec/javascripts/protractor_specs for easy matching and organization**
48
+
49
+ **Example**
50
+
51
+ If I have a directory set up for protractor specs in `spec/javascripts/protractor_specs/`, my configuration file would look something like the below
52
+
53
+ ```
54
+ // An example configuration file.
55
+ exports.config = {
56
+ // The address of a running selenium server.
57
+ seleniumAddress: 'http://localhost:4444/wd/hub',
58
+
59
+ // Capabilities to be passed to the webdriver instance.
60
+ capabilities: {
61
+ 'browserName': 'chrome'
62
+ },
63
+
64
+ // Spec patterns are relative to the current working directly when protractor is called
65
+ specs: ['protractor_specs/**/*.js '],
66
+
67
+ baseUrl: 'http://localhost:4000',
68
+
69
+ // Options to be passed to Jasmine-node.
70
+ jasmineNodeOpts: {
71
+ showColors: true,
72
+ defaultTimeoutInterval: 30000
73
+ },
74
+ };
75
+
76
+ ```
77
+
78
+ Once you have setup your tests as above, running `rake protractor:spec will pic up new tests and run them for you`
79
+
80
+ ### Setup and teardown
81
+
82
+ There is a task to reset your database to remove items you have created during your tests. This will also seed your database with any fixtures you might have prepared
83
+
84
+ $ rake protractor:cleanup
85
+
86
+ This will reset your test database and load in seeds in db/seeds.rb into your test database only.
87
+
88
+ There is also a convenience function for running cleanup after you have run your tests ready for the next test run.
89
+
90
+ $ rake protractor:spec_and_cleanup
91
+
92
+ ## Notes about integration tests
93
+
94
+ Integration tests are **MUCH** faster than testing things yourself but they are MUCH slower than running unit tests or
95
+ rspec tests. Keep your integration tests to a minimum and test as much as possible with your normal rails test suite.
28
96
 
29
97
 
30
98
  ## Contributing
@@ -1,5 +1,5 @@
1
1
  module Protractor
2
2
  module Rails
3
- VERSION = "0.0.2"
3
+ VERSION = "0.0.3-alpha"
4
4
  end
5
5
  end
@@ -77,7 +77,18 @@ namespace :protractor do
77
77
  end
78
78
 
79
79
  task :cleanup do
80
- puts "rake db:test:prepare to cleanup for the next test session".green.bold
80
+ puts "rake db:test:prepare to cleanup for the next test session".green
81
81
  system 'rake db:test:prepare --trace'
82
+ puts "Seeding the test database....".green
83
+ system "rake db:test:seed --trace"
84
+ end
85
+ end
86
+
87
+ namespace :db do
88
+ namespace :test do
89
+ desc "seed only the test database (Task provided by protractor-rails)"
90
+ task :seed do
91
+ system "rake db:seed RAILS_ENV=test"
92
+ end
82
93
  end
83
94
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: protractor-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3.pre.alpha
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyrone Wilson
@@ -106,9 +106,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
106
106
  version: '0'
107
107
  required_rubygems_version: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - ">="
109
+ - - ">"
110
110
  - !ruby/object:Gem::Version
111
- version: '0'
111
+ version: 1.3.1
112
112
  requirements: []
113
113
  rubyforge_project:
114
114
  rubygems_version: 2.2.2