capybara-angular-material 0.0.7 → 0.0.8

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: 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