• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hazendaz / httpunit / 656

06 Dec 2025 09:11PM UTC coverage: 80.452% (+0.02%) from 80.435%
656

push

github

hazendaz
[maven-release-plugin] prepare for next development iteration

3213 of 4105 branches covered (78.27%)

Branch coverage included in aggregate %.

8245 of 10137 relevant lines covered (81.34%)

0.81 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

62.5
/src/main/java/com/meterware/httpunit/parsing/NekoHTMLParser.java
1
/*
2
 * MIT License
3
 *
4
 * Copyright 2011-2025 Russell Gold
5
 *
6
 * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
7
 * documentation files (the "Software"), to deal in the Software without restriction, including without limitation
8
 * the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and
9
 * to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10
 *
11
 * The above copyright notice and this permission notice shall be included in all copies or substantial portions
12
 * of the Software.
13
 *
14
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
15
 * THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
17
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
18
 * DEALINGS IN THE SOFTWARE.
19
 */
20
package com.meterware.httpunit.parsing;
21

22
import java.io.IOException;
23
import java.io.StringReader;
24
import java.net.URL;
25

26
import org.w3c.dom.Document;
27
import org.w3c.dom.html.HTMLDocument;
28
import org.xml.sax.InputSource;
29
import org.xml.sax.SAXException;
30

31
/**
32
 * The Class NekoHTMLParser.
33
 */
34
class NekoHTMLParser implements HTMLParser {
1✔
35

36
    /**
37
     * parse the given URL with the given pageText using the given document adapter
38
     *
39
     * @param pageURL
40
     * @param pageText
41
     * @param adapter
42
     */
43
    @Override
44
    public void parse(URL pageURL, String pageText, DocumentAdapter adapter) throws IOException, SAXException {
45
        try {
46
            NekoDOMParser parser = NekoDOMParser.newParser(adapter, pageURL);
1✔
47
            parser.parse(new InputSource(new StringReader(pageText)));
1✔
48
            Document doc = parser.getDocument();
1✔
49
            adapter.setDocument((HTMLDocument) doc);
1✔
50
        } catch (NekoDOMParser.ScriptException e) {
×
51
            throw e.getException();
×
52
        }
1✔
53
    }
1✔
54

55
    @Override
56
    public String getCleanedText(String string) {
57
        return string == null ? "" : string.replace(NBSP, ' ');
1!
58
    }
59

60
    @Override
61
    public boolean supportsPreserveTagCase() {
62
        return false;
×
63
    }
64

65
    @Override
66
    public boolean supportsForceTagCase() {
67
        return false;
×
68
    }
69

70
    @Override
71
    public boolean supportsReturnHTMLDocument() {
72
        return true;
1✔
73
    }
74

75
    @Override
76
    public boolean supportsParserWarnings() {
77
        return true;
×
78
    }
79

80
    /** The Constant NBSP. */
81
    private static final char NBSP = (char) 160; // non-breaking space, defined by nekoHTML
82
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc