capybara-angular-material 0.0.7 → 0.0.8

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: 5eb050dd23710256c348fd45309cf835ff8ac94e
4
- data.tar.gz: 550b5142cc87d32bd190cc495f36e23d1e5976e2
3
+ metadata.gz: df09bf581ebd33ce45faecae9623cb3d87c7ac5b
4
+ data.tar.gz: 7eb8c57aba74cbc9150dd0af9c859660791a12a1
5
5
  SHA512:
6
- metadata.gz: 3d0a69ef9995850fda241efd84d20837f1cf16e3b3551a14b40fa38789d940739dda402628d94b89c8744fbcb9733c9ed896a00749829490ae43d8793a119035
7
- data.tar.gz: 5a4248ae318b965424e8b58a2b4a4661cc975048f681ba89fd3ea85c3b13734cd049e067e50e210758e0d360151a952365de0a481e9e9069696fadd17f2f725e
6
+ metadata.gz: 852eb35bddb2f2836a95c78a8cf9a5fe1669e96b4f60cd1be6e6082c45fbacac466eb3aa6b6d60c41504e057f88c1cef1a201e3c6cc0c0e1a98e640dbc1c5eb7
7
+ data.tar.gz: c856e6be3e21ae0f7ca7654f56cb1fdd108779a547f25ed5723ef1eb092f5a2d6d2d74952d952df98f0ae685ec0fe5095c6db9ba07bd9f19d821b675aaeff467
data/app/js/app.js CHANGED
@@ -1,2 +1,9 @@
1
1
 
2
- angular.module('app', []).controller('appController', function($scope) {});
2
+ angular.module('app', ['ngMaterial']).controller('appController', function($scope) {
3
+ $scope.inputs = {
4
+ checkbox: {
5
+ unchecked: {value: false, name: 'A nice checkbox'},
6
+ checked: {value: true, name: 'Woof'}
7
+ }
8
+ };
9
+ });
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |gem|
2
2
  gem.name = 'capybara-angular-material'
3
- gem.version = '0.0.7'
3
+ gem.version = '0.0.8'
4
4
  gem.license = 'MIT'
5
5
 
6
6
  gem.authors = ['Rimian Perkins']
@@ -13,7 +13,8 @@ Gem::Specification.new do |gem|
13
13
  gem.files = `git ls-files`.split($ORS) - ['Gemfile.lock']
14
14
  gem.require_paths = %w(lib)
15
15
 
16
- gem.add_development_dependency('rspec', ['~> 3.3', '>= 3.3.0'])
17
16
  gem.add_development_dependency('capybara', ['~> 2.5', '>= 2.5.0'])
18
17
  gem.add_development_dependency('poltergeist', ['~> 1.6', '>= 1.6.0'])
18
+ gem.add_development_dependency('rspec', ['~> 3.3', '>= 3.3.0'])
19
+ gem.add_development_dependency('sinatra', ['~> 1.4', '>= 1.4.6'])
19
20
  end
data/config.ru ADDED
@@ -0,0 +1,11 @@
1
+ require 'sinatra/base'
2
+
3
+ class App < ::Sinatra::Base
4
+ set :public_folder, './'
5
+
6
+ get '/' do
7
+ send_file 'index.html'
8
+ end
9
+ end
10
+
11
+ run App
data/index.html CHANGED
@@ -1,23 +1,28 @@
1
1
  <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Capybara Angular Material</title>
5
- <meta charset="utf-8">
6
- </head>
7
- <body ng-app="app">
2
+ <html ng-strict-di>
3
+ <head>
4
+ <title>Capybara Angular Material</title>
5
+ <meta charset="utf-8">
6
+ <link rel="stylesheet" href="/node_modules/angular-material/angular-material.min.css">
7
+ </head>
8
+ <body ng-app="app">
8
9
 
9
- <form role="form" name="form" ng-controller="appController" novalidate>
10
- <h1>Capybara Angular Material</h1>
10
+ <form role="form" name="form" ng-controller="appController" novalidate class="md-padding">
11
+ <h1>Capybara Angular Material</h1>
11
12
 
12
- <md-checkbox>
13
- A nice checkbox
14
- </md-checkbox>
13
+ <md-checkbox ng-model="inputs.checkbox.unchecked.value" aria-label="{{inputs.checkbox.unchecked.name}}">
14
+ {{inputs.checkbox.unchecked.name}}
15
+ </md-checkbox>
15
16
 
16
- </form>
17
+ <md-checkbox ng-model="inputs.checkbox.checked.value" aria-label="{{inputs.checkbox.checked.name}}">
18
+ {{inputs.checkbox.checked.name}}
19
+ </md-checkbox>
20
+ </form>
17
21
 
18
- <script src="node_modules/angular/angular.min.js"></script>
19
- <script src="node_modules/angular-material/angular-material.min.js"></script>
20
- <script src="node_modules/angular-aria/angular-aria.min.js"></script>
21
- <script src="app/js/app.js"></script>
22
- </body>
22
+ <script src="/node_modules/angular/angular.min.js"></script>
23
+ <script src="/node_modules/angular-material/angular-material.min.js"></script>
24
+ <script src="/node_modules/angular-animate/angular-animate.min.js"></script>
25
+ <script src="/node_modules/angular-aria/angular-aria.min.js"></script>
26
+ <script src="/app/js/app.js"></script>
27
+ </body>
23
28
  </html>
@@ -4,7 +4,7 @@ module Capybara
4
4
  module RSpecMatchers
5
5
  def have_md_checkbox(locator, options={})
6
6
  checked = "[@aria-checked='#{options[:checked].to_s}']" if options.has_key?(:checked)
7
- HaveSelector.new(:xpath, "//md-checkbox#{checked}[normalize-space(text())='#{locator}']", options.reject {|k,v| k == :checked})
7
+ HaveSelector.new(:xpath, "//md-checkbox#{checked}/*/span[normalize-space(text())='#{locator}']", options.reject {|k,v| k == :checked})
8
8
  end
9
9
  end
10
10
  end
@@ -1,46 +1,39 @@
1
1
 
2
2
  feature 'Angular Material Demos - Checkbox' do
3
- scenario 'It has a Checkbox' do
4
- expect('<md-checkbox>cheese</md-checkbox>').to have_md_checkbox 'cheese'
3
+ let(:checked_locator) { 'Woof' }
4
+ let(:unchecked_locator) { 'A nice checkbox' }
5
+
6
+ before { visit('/index.html') }
7
+
8
+ it 'has no checkbox' do
9
+ expect(page).not_to have_md_checkbox 'checkbox that does not exist'
5
10
  end
6
11
 
7
- scenario 'It normalises space' do
8
- expect('<md-checkbox> cheese </md-checkbox>').to have_md_checkbox 'cheese'
12
+ it 'has a checkbox' do
13
+ expect(page).to have_md_checkbox checked_locator
9
14
  end
10
15
 
11
- scenario 'It does not have a Checkbox' do
12
- expect('<md-checkbox>apple</md-checkbox>').not_to have_md_checkbox 'orange'
16
+ it 'has a checkbox' do
17
+ expect(page).to have_md_checkbox unchecked_locator
13
18
  end
14
19
 
15
20
  it 'does not match part of the text' do
16
- expect('<md-checkbox>this is a checkbox with text in it</md-checkbox>').not_to have_md_checkbox('a checkbox')
21
+ expect(page).not_to have_md_checkbox checked_locator[0...7].strip!
17
22
  end
18
23
 
19
- it 'is not checked' do
20
- expect('<md-checkbox aria-checked="false">zephod</md-checkbox>').to have_md_checkbox('zephod', :checked => false)
24
+ it 'has a checkbox that is not checked' do
25
+ expect(page).to have_md_checkbox(unchecked_locator, :checked => false)
21
26
  end
22
27
 
23
28
  it 'is not checked' do
24
- expect('<md-checkbox aria-checked="false">zephod</md-checkbox>').not_to have_md_checkbox('zephod', :checked => true)
29
+ expect(page).not_to have_md_checkbox(unchecked_locator, :checked => true)
25
30
  end
26
31
 
27
32
  it 'is checked' do
28
- expect('<md-checkbox aria-checked="true">orange</md-checkbox>').to have_md_checkbox('orange', :checked => true)
33
+ expect(page).to have_md_checkbox(checked_locator, :checked => true)
29
34
  end
30
35
 
31
36
  it 'is checked' do
32
- expect('<md-checkbox aria-checked="true">orange</md-checkbox>').not_to have_md_checkbox('orange', :checked => false)
33
- end
34
-
35
- describe 'page' do
36
- before { visit('/index.html') }
37
-
38
- scenario 'It has a Checkbox' do
39
- expect(page).to have_md_checkbox 'A nice checkbox'
40
- end
41
-
42
- scenario 'It has no Checkbox' do
43
- expect(page).not_to have_md_checkbox 'checkbox that does not exist'
44
- end
37
+ expect(page).not_to have_md_checkbox(checked_locator, :checked => false)
45
38
  end
46
39
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: capybara-angular-material
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.7
4
+ version: 0.0.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rimian Perkins
@@ -11,65 +11,85 @@ cert_chain: []
11
11
  date: 2015-09-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rspec
14
+ name: capybara
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.3'
19
+ version: '2.5'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.3.0
22
+ version: 2.5.0
23
23
  type: :development
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - "~>"
28
28
  - !ruby/object:Gem::Version
29
- version: '3.3'
29
+ version: '2.5'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.3.0
32
+ version: 2.5.0
33
33
  - !ruby/object:Gem::Dependency
34
- name: capybara
34
+ name: poltergeist
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '2.5'
39
+ version: '1.6'
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 2.5.0
42
+ version: 1.6.0
43
43
  type: :development
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: '2.5'
49
+ version: '1.6'
50
50
  - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 2.5.0
52
+ version: 1.6.0
53
53
  - !ruby/object:Gem::Dependency
54
- name: poltergeist
54
+ name: rspec
55
55
  requirement: !ruby/object:Gem::Requirement
56
56
  requirements:
57
57
  - - "~>"
58
58
  - !ruby/object:Gem::Version
59
- version: '1.6'
59
+ version: '3.3'
60
60
  - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: 1.6.0
62
+ version: 3.3.0
63
63
  type: :development
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - "~>"
68
68
  - !ruby/object:Gem::Version
69
- version: '1.6'
69
+ version: '3.3'
70
70
  - - ">="
71
71
  - !ruby/object:Gem::Version
72
- version: 1.6.0
72
+ version: 3.3.0
73
+ - !ruby/object:Gem::Dependency
74
+ name: sinatra
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '1.4'
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 1.4.6
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '1.4'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 1.4.6
73
93
  description: Provides selectors to test Angular Material Directives
74
94
  email:
75
95
  - hello@rimian.com.au
@@ -85,6 +105,7 @@ files:
85
105
  - README.md
86
106
  - app/js/app.js
87
107
  - capybara-angular-material.gemspec
108
+ - config.ru
88
109
  - index.html
89
110
  - lib/capybara/angular/material.rb
90
111
  - lib/capybara/angular/material/rspec.rb