site_prism-all_there 0.2 → 0.2.1
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
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 98959a1d3f689e5d849760ef9a7960ef696cac8cb8e19c52cfc56da862eabf3d
|
4
|
+
data.tar.gz: 331306ed4ffa6f70922d21da78b1cdbe18b25da839d8fce1afb796d9db0c92d9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9e37113f2844e37e68dc9e4f5e5d3c9324cd4b46f9341a001a70dbfe9ea0cdb538b0700201eabba77265b3ec822ab1774bc3ea2225823cd7170ede0e3c8ea34f
|
7
|
+
data.tar.gz: 8e4ae6832dc3cd2d09d65fbb0af6f13089b65c33286f4c2b3f509b7a4764910cfd58330b09d7385971614516711b970cc81035d14eff8e092737ccee99748c90
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module SitePrism
|
4
|
+
module AllThere
|
5
|
+
# Returns the Expected Item Map on a specific SitePrism object
|
6
|
+
#
|
7
|
+
# api private
|
8
|
+
#
|
9
|
+
class ExpectedItems
|
10
|
+
attr_reader :instance
|
11
|
+
private :instance
|
12
|
+
|
13
|
+
def initialize(instance)
|
14
|
+
@instance = instance
|
15
|
+
end
|
16
|
+
|
17
|
+
def array
|
18
|
+
[
|
19
|
+
mapped_checklist_of(:element),
|
20
|
+
mapped_checklist_of(:elements),
|
21
|
+
mapped_checklist_of(:section),
|
22
|
+
mapped_checklist_of(:sections),
|
23
|
+
mapped_checklist_of(:iframe),
|
24
|
+
]
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def mapped_checklist_of(type)
|
30
|
+
mapped_items.hash[type].select { |name| mapped_checklist.include?(name) }
|
31
|
+
end
|
32
|
+
|
33
|
+
# If the page or section has expected_items set, return expected_items that are mapped
|
34
|
+
# otherwise just return the list of all mapped_items
|
35
|
+
def mapped_checklist
|
36
|
+
if checklist
|
37
|
+
SitePrism.logger.debug('Expected Items has been set.')
|
38
|
+
mapped_items.array.select { |name| checklist.include?(name) }
|
39
|
+
else
|
40
|
+
mapped_items.array
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
# List of expected_items as defined during build phase
|
45
|
+
def checklist
|
46
|
+
instance.class.expected_items
|
47
|
+
end
|
48
|
+
|
49
|
+
def mapped_items
|
50
|
+
@mapped_items ||= MappedItems.new(instance)
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -54,34 +54,7 @@ module SitePrism
|
|
54
54
|
end
|
55
55
|
|
56
56
|
def expected_item_map
|
57
|
-
|
58
|
-
expected(:element),
|
59
|
-
expected(:elements),
|
60
|
-
expected(:section),
|
61
|
-
expected(:sections),
|
62
|
-
expected(:iframe),
|
63
|
-
]
|
64
|
-
end
|
65
|
-
|
66
|
-
def expected(type)
|
67
|
-
MappedItems.new(instance).hash[type].select { |name| elements_to_check.include?(name) }
|
68
|
-
end
|
69
|
-
|
70
|
-
# If the page or section has expected_items set, return expected_items that are mapped
|
71
|
-
# otherwise just return the list of all mapped_items
|
72
|
-
def elements_to_check
|
73
|
-
if _expected_items
|
74
|
-
SitePrism.logger.debug('Expected Items has been set.')
|
75
|
-
MappedItems.new(instance).array.select do |name|
|
76
|
-
_expected_items.include?(name)
|
77
|
-
end
|
78
|
-
else
|
79
|
-
MappedItems.new(instance).array
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
def _expected_items
|
84
|
-
instance.class.expected_items
|
57
|
+
ExpectedItems.new(instance).array
|
85
58
|
end
|
86
59
|
|
87
60
|
def there?(name)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: site_prism-all_there
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Luke Hill
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-08-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -92,6 +92,7 @@ files:
|
|
92
92
|
- LICENSE.md
|
93
93
|
- README.md
|
94
94
|
- lib/site_prism/all_there.rb
|
95
|
+
- lib/site_prism/all_there/expected_items.rb
|
95
96
|
- lib/site_prism/all_there/mapped_items.rb
|
96
97
|
- lib/site_prism/all_there/recursion_checker.rb
|
97
98
|
- lib/site_prism/all_there/version.rb
|