View Javadoc
1   package org.apache.maven.building;
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 static org.junit.Assert.assertEquals;
23  import static org.junit.Assert.fail;
24  
25  import java.io.File;
26  import java.io.InputStream;
27  import java.util.Scanner;
28  
29  import org.junit.Test;
30  
31  public class FileSourceTest
32  {
33  
34      @Test
35      public void testFileSource()
36      {
37          try
38          {
39              new FileSource( null );
40              fail( "Should fail, since you must specify a file" );
41          }
42          catch ( IllegalArgumentException e )
43          {
44              assertEquals( "no file specified", e.getMessage() );
45          }
46      }
47  
48      @Test
49      public void testGetInputStream()
50          throws Exception
51      {
52          File txtFile = new File( "target/test-classes/source.txt" );
53          FileSource source = new FileSource( txtFile );
54  
55          Scanner scanner = null;
56          InputStream is = null;
57          try
58          {
59              is = source.getInputStream();
60  
61              scanner = new Scanner( is );
62              assertEquals( "Hello World!", scanner.nextLine() );
63          }
64          finally
65          {
66              if ( scanner != null )
67              {
68                  scanner.close();
69              }
70              if ( is != null )
71              {
72                  is.close();
73              }
74          }
75      }
76  
77      @Test
78      public void testGetLocation()
79      {
80          File txtFile = new File( "target/test-classes/source.txt" );
81          FileSource source = new FileSource( txtFile );
82          assertEquals( txtFile.getAbsolutePath(), source.getLocation() );
83      }
84  
85      @Test
86      public void testGetFile()
87      {
88          File txtFile = new File( "target/test-classes/source.txt" );
89          FileSource source = new FileSource( txtFile );
90          assertEquals( txtFile.getAbsoluteFile(), source.getFile() );
91      }
92  
93  }