Simplify formatXml

This commit is contained in:
HelderSepu
2017-11-01 21:48:18 -04:00
parent 4eae9b681b
commit f600fe8dbb
2 changed files with 24 additions and 19 deletions

View File

@@ -186,24 +186,17 @@ export function formatXml (xml) {
"other->other": 0
}
fn = function(ln) {
var fromTo, key, padding, type, types, value
types = {
single: Boolean(ln.match(/<.+\/>/)),
closing: Boolean(ln.match(/<\/.+>/)),
opening: Boolean(ln.match(/<[^!?].*>/))
var fromTo, padding, type
if (Boolean(ln.match(/<.+\/>/))) {
type = "single"
} else if (Boolean(ln.match(/<\/.+>/))) {
type = "closing"
} else if (Boolean(ln.match(/<[^!?].*>/))) {
type = "opening"
} else {
type = "other"
}
type = ((function() {
var results
results = []
for (key in types) {
value = types[key]
if (value) {
results.push(key)
}
}
return results
})())[0]
type = type === void 0 ? "other" : type
fromTo = lastType + "->" + type
lastType = type
padding = ""

View File

@@ -16,7 +16,8 @@ import {
fromJSOrdered,
getAcceptControllingResponse,
createDeepLinkPath,
escapeDeepLinkPath
escapeDeepLinkPath,
formatXml
} from "core/utils"
import win from "core/window"
@@ -885,4 +886,15 @@ describe("utils", function() {
expect(result).toEqual("hello\\#world")
})
})
describe("formatXml", function() {
it("simple xml formatting", function() {
const startTime = Date.now()
const result = formatXml("<xml><name>john doe</name></xml>")
let duration = Date.now() - startTime
expect(result).toEqual("<xml>\n <name>john doe</name>\n</xml>\n")
expect(duration).toBeLessThan(5)
})
})
})