source: proiecte/HadoopJUnit/hadoop-0.20.1/src/test/org/apache/hadoop/cli/util/RegexpComparator.java @ 120

Last change on this file since 120 was 120, checked in by (none), 14 years ago

Added the mail files for the Hadoop JUNit Project

  • Property svn:executable set to *
File size: 1.6 KB
Line 
1/**
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements.  See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership.  The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License.  You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18
19package org.apache.hadoop.cli.util;
20
21import java.util.StringTokenizer;
22import java.util.regex.Matcher;
23import java.util.regex.Pattern;
24
25/**
26 * Comparator for the Command line tests.
27 *
28 * This comparator searches for the regular expression specified in 'expected'
29 * in the string 'actual' and returns true if the regular expression match is
30 * done
31 *
32 */
33public class RegexpComparator extends ComparatorBase {
34
35  @Override
36  public boolean compare(String actual, String expected) {
37    boolean success = false;
38    Pattern p = Pattern.compile(expected);
39   
40    StringTokenizer tokenizer = new StringTokenizer(actual, "\n\r");
41    while (tokenizer.hasMoreTokens() && !success) {
42      String actualToken = tokenizer.nextToken();
43      Matcher m = p.matcher(actualToken);
44      success = m.matches();
45    }
46   
47    return success;
48  }
49
50}
Note: See TracBrowser for help on using the repository browser.