cypress-on-rails 1.5.1 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 49942b0febcf64950936386fdbcbec0601534923
4
- data.tar.gz: dba819774cec41583fb545fe2517a9baceaf029a
3
+ metadata.gz: c704c33fe50fb989eaf131934d0210c112005e96
4
+ data.tar.gz: b53f4ce2fea91a67744f0432a736dd1021fb3c7d
5
5
  SHA512:
6
- metadata.gz: dd5ab5135eeec0405b53356e5205956a5ea2f7230341663ac206b76292eb895eef297a96e28345f94dd78ffc8cbda2c54ac0b408dec097dc18edfb760da2ef53
7
- data.tar.gz: ca4fb0a7f72ad6341fcb3c14aa22b6142ed95ffa3a77a5e6e229eeb3fc0d6e9290bb67edec65edb99ecae093044b4a795dc1611c6c5b193e764dcc76a1072e71
6
+ metadata.gz: 9f5bff901ec22f23d785eb19597b07fce18ecd87bea209464ce4bc9de4f6ce2238bd5f760f02d98443aa540e32147be1b06cc2dbc33e105d31364c8cfb4c7d91
7
+ data.tar.gz: 01c2e5fb7d24cac595e56e1ed24e4b0ed0643715dd4f51b11056806f456867bd2d72dd1cf15c5e583f1d3543ca131eda5783faa15fb9f6be0060134fdb15ae65
@@ -1,8 +1,10 @@
1
1
  language: ruby
2
2
  rvm:
3
3
  - 2.3
4
+ - 2.4
4
5
  - 2.5
5
6
  - 2.6
7
+ # - 2.7
6
8
 
7
9
  #addons:
8
10
  # artifacts:
@@ -27,6 +29,8 @@ before_install:
27
29
 
28
30
  script:
29
31
  - bundle exec rake
32
+ - gem uninstall -v '>= 2' -i $(rvm gemdir)@global -ax bundler || true
33
+ - gem install bundler -v '< 2'
30
34
  - ./spec/integrations/rails_5_2/test.sh
31
35
  - ./spec/integrations/rails_4_2/test.sh
32
36
  - ./spec/integrations/rails_3_2/test.sh
@@ -1,3 +1,12 @@
1
+ ## [1.6.0]
2
+ [Compare]: https://github.com/shakacode/cypress-on-rails/compare/v1.5.1...v1.6.0
3
+
4
+ ### Changed
5
+ * Change default port to 5017 [PR 49](https://github.com/shakacode/cypress-on-rails/pull/49) by [vfonic](https://github/vfonic)
6
+
7
+ ### Fixed
8
+ * fix file location warning message in clean.rb [PR 54](https://github.com/shakacode/cypress-on-rails/pull/54) by [ootoovak](https://github.com/ootoovak)
9
+
1
10
  ## [1.5.1]
2
11
  [Compare]: https://github.com/shakacode/cypress-on-rails/compare/v1.5.0...v1.5.1
3
12
 
@@ -32,7 +41,7 @@
32
41
  * Update Travis CI badge in README [PR 31](https://github.com/shakacode/cypress-on-rails/pull/31)
33
42
  * Fix CI by Installing cypress dependencies on Travis CI [PR 31](https://github.com/shakacode/cypress-on-rails/pull/31)
34
43
 
35
- ## [1.4.0]
44
+ ## [1.4.0]
36
45
  [Compare]: https://github.com/shakacode/cypress-on-rails/compare/v1.3.0...v1.4.0
37
46
 
38
47
  * Accept an options argument for scenarios. [PR 18](https://github.com/shakacode/cypress-on-rails/pull/18) by [ericraio](https://github.com/ericraio).
data/README.md CHANGED
@@ -8,7 +8,7 @@ This project is sponsored by the software consulting firm [ShakaCode](https://ww
8
8
 
9
9
  ----
10
10
 
11
- Gem for using [cypress.io](http://github.com/cypress-io/) in Rails and ruby rack applications
11
+ Gem for using [cypress.io](http://github.com/cypress-io/) in Rails and ruby rack applications
12
12
  with the goal of controlling State as mentioned in [Cypress Best Practices](https://docs.cypress.io/guides/references/best-practices.html#Organizing-Tests-Logging-In-Controlling-State)
13
13
 
14
14
  It allows to run code in the application context when executing cypress tests.
@@ -24,21 +24,21 @@ Has examples of setting up state with:
24
24
  * scenarios
25
25
  * custom commands
26
26
 
27
- This gem is based off https://github.com/konvenit/cypress-on-rails
28
-
29
27
  Video of getting started with this gem https://grant-ps.blog/2018/08/10/getting-started-with-cypress-io-and-ruby-on-rails/
30
28
 
31
29
  ## Getting started
32
30
 
33
31
  Add this to your Gemfile:
34
- ```
32
+
33
+ ```ruby
35
34
  group :test, :development do
36
35
  gem 'cypress-on-rails', '~> 1.0'
37
36
  end
38
37
  ```
39
38
 
40
39
  Generate the boilerplate code using:
41
- ```
40
+
41
+ ```shell
42
42
  bin/rails g cypress_on_rails:install
43
43
 
44
44
  # if you have/want a different cypress folder (default is spec/cypress)
@@ -51,17 +51,18 @@ bin/rails g cypress_on_rails:install --install_cypress_with=npm
51
51
  bin/rails g cypress_on_rails:update
52
52
  ```
53
53
 
54
- The generator adds the following files/directory to your application:
54
+ The generator modifies/adds the following files/directory in your application:
55
+ * `config/environments/test.rb`
55
56
  * `config/initializers/cypress_on_rails` used to configure CypressDev
56
57
  * `spec/cypress/integrations/` contains your cypress tests
57
58
  * `spec/cypress/support/on-rails.js` contains CypressDev support code
58
59
  * `spec/cypress/app_commands/scenarios/` contains your CypressDev scenario definitions
59
60
  * `spec/cypress/cypress_helper.rb` contains helper code for CypressDev app commands
60
61
 
61
- if you are not using database_cleaner look at `spec/cypress/app_commands/clean_db.rb`.
62
+ if you are not using database_cleaner look at `spec/cypress/app_commands/clean.rb`.
62
63
  if you are not using factory_bot look at `spec/cypress/app_commands/factory_bot.rb`.
63
64
 
64
- Now you can create scenarios and commands that are plan ruby files that get loaded through middleware, the ruby sky is your limit.
65
+ Now you can create scenarios and commands that are plain ruby files that get loaded through middleware, the ruby sky is your limit.
65
66
 
66
67
  ### WARNING
67
68
  *WARNING!!:* cypress-on-rails can execute arbitrary ruby code
@@ -71,10 +72,10 @@ Please use with extra caution if starting your local server on 0.0.0.0 or runnin
71
72
 
72
73
  Start the rails server in test mode and start cypress
73
74
 
74
- ```
75
+ ```shell
75
76
  # start rails
76
77
  RAILS_ENV=test bin/rake db:create db:schema:load
77
- bin/rails server -e test -p 5002
78
+ bin/rails server -e test -p 5017
78
79
 
79
80
  # in separate window start cypress
80
81
  yarn cypress open --project ./spec
@@ -88,10 +89,10 @@ You can run your [factory_bot](https://github.com/thoughtbot/factory_bot) direct
88
89
  require 'cypress_on_rails/smart_factory_wrapper'
89
90
 
90
91
  CypressOnRails::SmartFactoryWrapper.configure(
91
- always_reload: !Rails.configuration.cache_classes,
92
- factory: FactoryBot,
93
- files: Dir['./spec/factories/**/*.rb']
94
- )
92
+ always_reload: !Rails.configuration.cache_classes,
93
+ factory: FactoryBot,
94
+ files: Dir['./spec/factories/**/*.rb']
95
+ )
95
96
  ```
96
97
 
97
98
  ```js
@@ -108,9 +109,9 @@ describe('My First Test', function() {
108
109
  cy.visit('/')
109
110
 
110
111
  cy.contains("Hello World")
111
-
112
+
112
113
  // Accessing result
113
- cy.appFactories([['create', 'invoice', { paid: false }]]).then((records) => {
114
+ cy.appFactories([['create', 'invoice', { paid: false }]]).then((records) => {
114
115
  cy.visit(`/invoices/${records[0].id}`);
115
116
  });
116
117
  })
@@ -155,7 +156,7 @@ You define a scenario in the `spec/cypress/app_commands/scenarios` directory:
155
156
  Profile.create name: "Cypress Hill"
156
157
 
157
158
  # or if you have factory_bot enabled in your cypress_helper
158
- CypressOnRails::SmartFactoryWrapper.create(:profile, name: "Cypress Hill")
159
+ CypressOnRails::SmartFactoryWrapper.create(:profile, name: "Cypress Hill")
159
160
  ```
160
161
 
161
162
  Then reference the scenario in your test:
@@ -177,8 +178,8 @@ describe('My First Test', function() {
177
178
 
178
179
  create a ruby file in `spec/cypress/app_commands` directory:
179
180
  ```ruby
180
- # spec/cypress/app_commands/load_seed.rb
181
- load "#{Rails.root}/db/seeds.rb"
181
+ # spec/cypress/app_commands/load_seed.rb
182
+ load "#{Rails.root}/db/seeds.rb"
182
183
  ```
183
184
 
184
185
  Then reference the command in your test with `cy.app('load_seed')`:
@@ -186,7 +187,7 @@ Then reference the command in your test with `cy.app('load_seed')`:
186
187
  // spec/cypress/integrations/simple_spec.js
187
188
  describe('My First Test', function() {
188
189
  beforeEach(() => { cy.app('load_seed') })
189
-
190
+
190
191
  it('visit root', function() {
191
192
  cy.visit('/')
192
193
 
@@ -209,7 +210,7 @@ CypressOnRails.configure do |c|
209
210
  end
210
211
  use CypressOnRails::Middleware
211
212
 
212
- run MyApp
213
+ run MyApp
213
214
  ```
214
215
 
215
216
  add the following file to cypress
@@ -1,3 +1,3 @@
1
1
  module CypressOnRails
2
- VERSION = '1.5.1'
2
+ VERSION = '1.6.0'
3
3
  end
@@ -1,4 +1,4 @@
1
1
  {
2
- "baseUrl": "http://localhost:5002",
2
+ "baseUrl": "http://localhost:5017",
3
3
  "defaultCommandTimeout": 10000
4
4
  }
@@ -3,7 +3,7 @@ if defined?(DatabaseCleaner)
3
3
  DatabaseCleaner.strategy = :truncation
4
4
  DatabaseCleaner.clean
5
5
  else
6
- logger.warn "add database_cleaner or update clean_db"
6
+ logger.warn "add database_cleaner or update cypress/app_commands/clean.rb"
7
7
  Post.delete_all if defined?(Post)
8
8
  end
9
9
 
@@ -112,7 +112,7 @@ context('Cypress.config()', () => {
112
112
  let myConfig = Cypress.config()
113
113
 
114
114
  expect(myConfig).to.have.property('animationDistanceThreshold', 5)
115
- expect(myConfig).to.have.property('baseUrl', 'http://localhost:5002')
115
+ expect(myConfig).to.have.property('baseUrl', 'http://localhost:5017')
116
116
  expect(myConfig).to.have.property('defaultCommandTimeout', 10000)
117
117
  expect(myConfig).to.have.property('requestTimeout', 5000)
118
118
  expect(myConfig).to.have.property('responseTimeout', 30000)
@@ -1,5 +1,5 @@
1
1
  {
2
- "baseUrl": "http://localhost:5002",
2
+ "baseUrl": "http://localhost:5017",
3
3
  "defaultCommandTimeout": 10000,
4
4
  "projectId": "qvzwep"
5
5
  }
@@ -21,7 +21,7 @@ echo '-- start rails server'
21
21
  # make sure the server is not running
22
22
  (kill -9 `cat tmp/pids/server.pid` || true )
23
23
 
24
- bundle exec ./bin/rails server -p 5002 -e test &
24
+ bundle exec ./bin/rails server -p 5017 -e test &
25
25
  sleep 2 # give rails a chance to start up correctly
26
26
 
27
27
  echo '-- cypress run'
@@ -1,7 +1,8 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
4
- gem 'rails', '4.2.10'
4
+ gem 'rails', '~> 4.2.10'
5
+ gem 'sprockets', '~> 3.7.2'
5
6
 
6
7
  group :development, :test do
7
8
  gem 'cypress-on-rails', path: '../../../'
@@ -21,7 +21,7 @@ echo '-- start rails server'
21
21
  # make sure the server is not running
22
22
  (kill -9 `cat tmp/pids/server.pid` || true )
23
23
 
24
- bundle exec ./bin/rails server -p 5002 -e test &
24
+ bundle exec ./bin/rails server -p 5017 -e test &
25
25
  sleep 2 # give rails a chance to start up correctly
26
26
 
27
27
  echo '-- cypress run'
@@ -3,6 +3,7 @@ git_source(:github) { |repo| "https://github.com/#{repo}.git" }
3
3
 
4
4
  # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
5
5
  gem 'rails', '~> 5.2.0'
6
+ gem 'sprockets', '~> 3.7.2'
6
7
  gem 'sqlite3', '~> 1.3.6'
7
8
 
8
9
  # Reduces boot times through caching; required in config/boot.rb
@@ -23,7 +23,7 @@ echo '-- start rails server'
23
23
  # make sure the server is not running
24
24
  (kill -9 `cat tmp/pids/server.pid` || true )
25
25
 
26
- bundle exec ./bin/rails server -p 5002 -e test &
26
+ bundle exec ./bin/rails server -p 5017 -e test &
27
27
  sleep 2 # give rails a chance to start up correctly
28
28
 
29
29
  echo '-- cypress run'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cypress-on-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - miceportal team
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-01-14 00:00:00.000000000 Z
12
+ date: 2020-04-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rack