]> source.dussan.org Git - archiva.git/blob
470544f0b8723d43bb22dc49a3f83f611104c42f
[archiva.git] /
1 package org.apache.archiva.web.validator.utils;
2
3 /*
4  * Licensed to the Apache Software Foundation (ASF) under one
5  * or more contributor license agreements.  See the NOTICE file
6  * distributed with this work for additional information
7  * regarding copyright ownership.  The ASF licenses this file
8  * to you under the Apache License, Version 2.0 (the
9  * "License"); you may not use this file except in compliance
10  * with the License.  You may obtain a copy of the License at
11  *
12  *   http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing,
15  * software distributed under the License is distributed on an
16  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  * KIND, either express or implied.  See the License for the
18  * specific language governing permissions and limitations
19  * under the License.
20  */
21
22 import junit.framework.Assert;
23 import org.apache.commons.lang.SystemUtils;
24
25 import java.util.List;
26 import java.util.Map;
27
28 public class ValidatorUtil
29 {
30     public static void assertFieldErrors( Map<String, List<String>> expectedFieldErrors,
31                                           Map<String, List<String>> actualFieldErrors )
32     {
33         if ( expectedFieldErrors != null )
34         {
35             Assert.assertNotNull( actualFieldErrors );
36             // checks the number of field errors
37             Assert.assertEquals(
38                 "expected " + expectedFieldErrors + SystemUtils.LINE_SEPARATOR + ", found " + actualFieldErrors,
39                 expectedFieldErrors.size(), actualFieldErrors.size() );
40
41             // check every content of the field error
42             for ( Map.Entry<String, List<String>> expectedEntry : expectedFieldErrors.entrySet() )
43             {
44                 if ( expectedEntry.getValue() != null )
45                 {
46                     Assert.assertNotNull( "actual with key " + expectedEntry.getKey() + " is null",
47                                           actualFieldErrors.get( expectedEntry.getKey() ) );
48                     // checks the error message count per error field
49                     Assert.assertEquals( expectedEntry.getValue().size(),
50                                          actualFieldErrors.get( expectedEntry.getKey() ).size() );
51
52                     // check the contents of error messages per field error
53                     for ( int i = 0; i < expectedEntry.getValue().size(); i++ )
54                     {
55                         String expected = expectedEntry.getValue().get( i );
56                         String actual = actualFieldErrors.get( expectedEntry.getKey() ).get( i );
57                         Assert.assertEquals( expected, actual );
58                     }
59                 }
60                 else
61                 {
62                     Assert.assertNull( actualFieldErrors.get( expectedEntry.getKey() ) );
63                 }
64             }
65         }
66         else
67         {
68             Assert.assertNull( actualFieldErrors );
69         }
70     }
71 }