chop 0.13.1 → 0.13.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/lib/chop/form.rb +8 -21
  3. data/lib/chop/version.rb +1 -1
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9cc96c192b4724217ece419b28ba7f3e0cacf00f
4
- data.tar.gz: 25e342b2afe607ac53764cee83cf625897c17c95
3
+ metadata.gz: e3067a61bdc457c0ed1ce15521f79adc1fbddc02
4
+ data.tar.gz: 17b710c74fc8587c8625497483661cf366cf2816
5
5
  SHA512:
6
- metadata.gz: 4f5db0423806ebc2092a37486ee2523ecf4e1ce9b494a890513aeab6bbdd303d4bc7dd931e80afcf86fda511c6a5f3f9cb4394ac1e4646a68890e3ba26ea0866
7
- data.tar.gz: 013133adbdb80aad248c19ae365b70f8958e1a5b9884381e18a29aee06ab4b2a6d9f3fde97266439caa6a493b964d2b5459bfd4607bb32f238dda94d58aed08d
6
+ metadata.gz: 45971725107ac1af7adde1dd5b21e209e8f17de1a09746d8f6ef129feb61fdccae846cb9b03da28a5b935171c8cc7737e5af12e58f7a214c27212e30e233f758
7
+ data.tar.gz: e7d1d46c071f5ef0f668a0a984aa4533482829eee38303a234ddc4eb9b05adcc472b8065d753d0185b28eff9376da877b110b371ebf0f91af4883d393d37d2da
data/lib/chop/form.rb CHANGED
@@ -13,18 +13,13 @@ module Chop
13
13
  end
14
14
  end
15
15
 
16
- class Field < Struct.new(:session, :label, :value, :path)
17
- def self.for *args
16
+ class Field < Struct.new(:session, :label, :value, :path, :field)
17
+ def self.for session, label, value, path
18
+ field = session.find_field(label)
18
19
  descendants.map do |klass|
19
- klass.new(*args)
20
+ klass.new(session, label, value, path, field)
20
21
  end.find(&:matches?)
21
22
  end
22
-
23
- private
24
-
25
- def field
26
- @field ||= session.find_field(label)
27
- end
28
23
  end
29
24
 
30
25
  class MultipleSelect < Field
@@ -59,11 +54,7 @@ module Chop
59
54
 
60
55
  def fill_in!
61
56
  checkboxes.each do |checkbox|
62
- if checkbox_label_in_values? checkbox
63
- session.check(checkbox[:id])
64
- else
65
- session.uncheck(checkbox[:id])
66
- end
57
+ checkbox.set checkbox_label_in_values?(checkbox)
67
58
  end
68
59
  end
69
60
 
@@ -86,11 +77,7 @@ module Chop
86
77
  end
87
78
 
88
79
  def fill_in!
89
- if value.present?
90
- session.check label
91
- else
92
- session.uncheck label
93
- end
80
+ field.set value.present?
94
81
  end
95
82
  end
96
83
 
@@ -126,7 +113,7 @@ module Chop
126
113
  end
127
114
 
128
115
  def fill_in!
129
- session.attach_file label, ::File.join(path, value)
116
+ field.set ::File.join(path, value)
130
117
  end
131
118
  end
132
119
 
@@ -136,7 +123,7 @@ module Chop
136
123
  end
137
124
 
138
125
  def fill_in!
139
- session.fill_in label, with: value
126
+ field.set value
140
127
  end
141
128
  end
142
129
  end
data/lib/chop/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Chop
2
- VERSION = "0.13.1"
2
+ VERSION = "0.13.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chop
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.13.1
4
+ version: 0.13.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Micah Geisel
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-09 00:00:00.000000000 Z
11
+ date: 2017-03-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord