circleci
5 of 8 new or added lines in 1 file covered. (62.5%)
835 existing lines in 32 files now uncovered.2537 of 3212 relevant lines covered (78.99%)
278.65 hits per line
| 1 |
# frozen_string_literal: true
|
|
|
UNCOV
2
|
class XmlNodeBuilder |
2✔ |
|
UNCOV
3
|
XML_VERSION = "1.0" |
2✔ |
| 4 |
|
|
|
UNCOV
5
|
attr_reader :document, :node |
2✔ |
| 6 |
|
|
| 7 |
# @return [String]
|
|
|
UNCOV
8
|
def xml_version |
2✔ |
|
UNCOV
9
|
XML_VERSION
|
644✔ |
|
UNCOV
10
|
end
|
|
| 11 |
|
|
| 12 |
# @return [Array<String>]
|
|
|
UNCOV
13
|
def xml_document_args |
2✔ |
|
UNCOV
14
|
[ |
|
|
UNCOV
15
|
xml_version |
644✔ |
|
UNCOV
16
|
] |
|
|
UNCOV
17
|
end
|
|
| 18 |
|
|
| 19 |
# @return [Nokogiri::XML::Document]
|
|
|
UNCOV
20
|
def build_document |
2✔ |
|
UNCOV
21
|
Nokogiri::XML::Document.new(*xml_document_args) |
644✔ |
|
UNCOV
22
|
end
|
|
| 23 |
|
|
| 24 |
# @return [Nokogiri::XML::Element]
|
|
|
UNCOV
25
|
def build |
2✔ |
| 26 |
return node if node.present? |
2✔ |
| 27 |
|
|
| 28 |
@node = document.root
|
2✔ |
|
UNCOV
29
|
end
|
|
| 30 |
|
|
| 31 |
# @param [Nokogiri::XML::Document] document
|
|
|
UNCOV
32
|
def initialize(document: nil) |
2✔ |
|
UNCOV
33
|
@document = document || build_document
|
3,574✔ |
| 34 |
|
|
|
UNCOV
35
|
@node = nil |
3,574✔ |
|
UNCOV
36
|
end
|
|
|
UNCOV
37
|
end
|