1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.internal.renderkit.renderer;
21
22 import org.apache.myfaces.tobago.internal.config.AbstractTobagoTestBase;
23
24 import java.io.BufferedReader;
25 import java.io.FileNotFoundException;
26 import java.io.IOException;
27 import java.io.InputStream;
28 import java.io.InputStreamReader;
29 import java.util.stream.Collectors;
30
31 public abstract class RendererTestBase extends AbstractTobagoTestBase {
32
33 protected String formattedResult() throws IOException {
34 return format1To2Indent(getLastWritten());
35 }
36
37 protected String loadHtml(final String fileName) throws IOException {
38 final ClassLoader classLoader = ClassLoader.getSystemClassLoader();
39 try (InputStream is = classLoader.getResourceAsStream(fileName)) {
40 if (is == null) {
41 throw new FileNotFoundException(fileName);
42 }
43 try (final InputStreamReader isr = new InputStreamReader(is);
44 final BufferedReader reader = new BufferedReader(isr)) {
45 return reader.lines().collect(Collectors.joining(System.lineSeparator()))
46 .replaceAll("<!--[^>]*-->", "")
47 .replaceAll("^\n\n", "");
48 }
49 }
50 }
51
52 protected String format1To2Indent(final String xml) {
53 return xml.replaceAll("^\n", "")
54 .replaceAll("\n <", "\n\t<")
55 .replaceAll("\n <", "\n\t\t<")
56 .replaceAll("\n <", "\n\t\t\t<")
57 .replaceAll("\n <", "\n\t\t\t\t<")
58 .replaceAll("\n <", "\n\t\t\t\t\t<")
59 .replaceAll("\n <", "\n\t\t\t\t\t\t<")
60 .replaceAll("\n <", "\n\t\t\t\t\t\t\t<")
61 .replaceAll("\t", " ");
62 }
63 }