1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 package org.apache.any23.mime.purifier;
19
20 import org.apache.tika.io.IOUtils;
21 import org.junit.After;
22 import org.junit.Assert;
23 import org.junit.Before;
24 import org.junit.Test;
25
26 import java.io.*;
27
28 /**
29 * Reference test case for {@link WhiteSpacesPurifier}.
30 *
31 * @author Davide Palmisano ( dpalmisano@gmail.com )
32 */
33 public class WhiteSpacesPurifierTest {
34
35 private Purifier purifier;
36
37 @Before
38 public void setUp() {
39 this.purifier = new WhiteSpacesPurifier();
40 }
41
42 @After
43 public void tearDown() {
44 this.purifier = null;
45 }
46
47 @Test
48 public void testPurification() throws IOException {
49 InputStream inputStream = new BufferedInputStream(
50 this.getClass().getResourceAsStream("/application/xhtml/blank-file-header.xhtml"));
51 this.purifier.purify(inputStream);
52 Assert.assertNotNull(inputStream);
53 Assert.assertTrue(validatePurification(IOUtils.toString(inputStream)));
54
55 }
56
57 /**
58 * Checks if a {@link String} starts with a propert character.
59 *
60 * @param string
61 *
62 * @return
63 */
64 private boolean validatePurification(String string) {
65 char firstChar = string.charAt(0);
66 return (firstChar != '\t') && (firstChar != '\n') && (firstChar != ' ');
67 }
68
69 }