rexle 1.3.14 → 1.3.15

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: e776621157e65a33b2df6868828286633b40d8f5
4
- data.tar.gz: 9a0d1b84665de2e310ba49dd5534a9df3325c81d
3
+ metadata.gz: 14c6f276ae292ed9e707c76af6996b7ff9b66c34
4
+ data.tar.gz: f8b62b17790fa2e0b5cdc132a7d9a589a23b95bf
5
5
  SHA512:
6
- metadata.gz: 2251cb40dd1c6bdad1ad0462e5fdc1a09d238e66b107c7a7991a1527cbd97a638b98ac3df3a9a0bfe2e7143adae120584c5e596cad0c940586b7c08ec8829797
7
- data.tar.gz: 7786bb4e4bcec86144aed24fefbf6bb3e78f0b30df78fb5b12d0bac12ebf94e14f992fd70e0aa6d4e01ffc1b75198d155d922fa6f3584dc77a542504227305db
6
+ metadata.gz: ff4e2456dde4369a2dc688df333085f2c6579c04954ed1c419c427fd17560d1695590e9fadc2b89c5eebfe90bace5c46a14b33128f41f47fb61639c36ec10268
7
+ data.tar.gz: 6caaa53b123b3cd2089f5c9794927d53f8e0adba57ec3c349e0160028b231daa06f17ef5ec03ad77509a68d2ca7886761b76ed34f55ffa01c9f92f2c2bb3950e
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -12,6 +12,8 @@ require 'backtrack-xpath'
12
12
 
13
13
  # modifications:
14
14
 
15
+ # 15-Mar-2016: bug fix: Reapplied a select case statement (which had
16
+ # subsequently been deleted) from method attribute_search()
15
17
  # 13-Mar-2016: bug fix: Reapplied a statement that was commented out in
16
18
  # the previous gem release
17
19
  # bug fix: Removed a redundant statement from
@@ -310,6 +312,7 @@ class Rexle
310
312
  end
311
313
 
312
314
  def contains(raw_args)
315
+
313
316
  #log = Logger.new('rexle.log','daily')
314
317
  #log.debug 'inside contains'
315
318
  path, raw_val = raw_args.split(',',2)
@@ -498,7 +501,7 @@ class Rexle
498
501
  end
499
502
 
500
503
  def query_xpath(raw_xpath_value, rlist=[], &blk)
501
-
504
+
502
505
  #@log.debug 'query_xpath : ' + raw_xpath_value.inspect
503
506
  #@log.debug '++ ' + self.xml.inspect
504
507
 
@@ -519,9 +522,11 @@ class Rexle
519
522
  .match(/([^\[]+)(\[[^\]]+\])?/).captures
520
523
 
521
524
  remaining_path = ($').to_s
525
+
522
526
  #@log.debug 'remaining_path: ' + remaining_path.inspect
523
527
 
524
528
  if remaining_path[/^contains\(/] then
529
+
525
530
  raw_condition = raw_condition ? raw_condition + '/' + remaining_path \
526
531
  : remaining_path
527
532
  remaining_path = ''
@@ -629,8 +634,12 @@ class Rexle
629
634
  r2 = self.parent.xpath(remaining_xpath)
630
635
 
631
636
  return r2
637
+
632
638
  elsif ename == '.'
633
- return self
639
+
640
+ remaining_xpath = raw_path[1..-1]
641
+ return remaining_xpath.empty? ? self : self.xpath(remaining_xpath)
642
+
634
643
  else
635
644
 
636
645
  return_elements = @child_elements.map.with_index.select do |x, i|
@@ -1069,18 +1078,17 @@ class Rexle
1069
1078
  end
1070
1079
 
1071
1080
  def scan_match(node, path)
1072
-
1081
+
1073
1082
  if path == '//' then
1074
1083
  return [node, node.text,
1075
1084
  node.elements.map {|x| scan_match x, path}]
1076
1085
  end
1077
-
1086
+
1078
1087
  r = []
1079
1088
  xpath2 = path[2..-1]
1080
- xpath2.sub!(/^\*\//,'')
1081
- xpath2.sub!(/^\*/,self.name)
1082
- xpath2.sub!(/^\w+/,'').sub!(/^\//,'') if xpath2[/^\w+/] == self.name
1083
-
1089
+ #jr150316 xpath2.sub!(/^\*\//,'')
1090
+ #jr150316xpath2.sub!(/^\*/,self.name)
1091
+ #jr150316xpath2.sub!(/^\w+/,'').sub!(/^\//,'') if xpath2[/^\w+/] == self.name
1084
1092
 
1085
1093
  r << node.xpath(xpath2)
1086
1094
  r << node.elements.map {|n| scan_match(n, path) if n\
@@ -1152,6 +1160,8 @@ class Rexle
1152
1160
  end
1153
1161
  elsif attr_search[/e\.xpath/] and eval(attr_search)
1154
1162
  block_given? ? blk.call(e) : e
1163
+ elsif e.element(attr_search)
1164
+ block_given? ? blk.call(e) : e
1155
1165
  end
1156
1166
 
1157
1167
  r2
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rexle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.14
4
+ version: 1.3.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -31,7 +31,7 @@ cert_chain:
31
31
  Tkua07gB3/nVO3aPg7C3vEbDZCxT3WAMli2uZisYT6ozmdAlDsixLjipgFN4If3z
32
32
  Ej0QR3kvGcAvFQ==
33
33
  -----END CERTIFICATE-----
34
- date: 2016-03-13 00:00:00.000000000 Z
34
+ date: 2016-03-15 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rexleparser
metadata.gz.sig CHANGED
Binary file