1 package org.apache.maven.plugins.resources;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.File;
23 import java.io.FileInputStream;
24 import java.io.IOException;
25 import java.io.InputStream;
26 import java.util.Enumeration;
27 import java.util.Properties;
28
29 import org.apache.maven.plugin.testing.AbstractMojoTestCase;
30 import org.codehaus.plexus.util.IOUtil;
31
32
33
34
35 public abstract class AbstractPropertyUtilsTest
36 extends AbstractMojoTestCase
37 {
38 protected File propertyFile;
39
40 protected File validationFile;
41
42 protected Properties validationProp;
43
44 protected abstract File getPropertyFile();
45
46 protected abstract File getValidationFile();
47
48 protected void setUp()
49 throws Exception
50 {
51 super.setUp();
52
53
54 propertyFile = getPropertyFile();
55 assertNotNull( propertyFile );
56
57 validationFile = getValidationFile();
58 assertNotNull( validationFile );
59
60 loadValidationProperties( validationFile );
61 }
62
63 protected boolean validateProperties( Properties prop )
64 {
65 boolean bRetVal = false;
66
67 Enumeration<?> propKeys = prop.keys();
68 String key;
69
70 while ( propKeys.hasMoreElements() )
71 {
72 key = (String) propKeys.nextElement();
73 bRetVal = prop.getProperty( key ).equals( validationProp.getProperty( key ) );
74 if ( !bRetVal )
75 {
76 break;
77 }
78 }
79
80 return bRetVal;
81 }
82
83
84
85
86
87
88
89 private void loadValidationProperties( File validationPropFile )
90 {
91 validationProp = new Properties();
92 InputStream in = null;
93
94 try
95 {
96 in = new FileInputStream( validationPropFile );
97 validationProp.load( in );
98 in.close();
99 in = null;
100 }
101 catch ( IOException ex )
102 {
103
104 }
105 finally
106 {
107 IOUtil.close( in );
108 }
109 }
110 }