View Javadoc

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  package org.apache.hadoop.hbase.util;
19  
20  import static org.junit.Assert.*;
21  
22  import org.apache.hadoop.conf.Configuration;
23  import org.apache.hadoop.fs.Path;
24  import org.apache.hadoop.hbase.TableName;
25  import org.apache.hadoop.hbase.HRegionInfo;
26  import org.apache.hadoop.hbase.testclassification.SmallTests;
27  import org.junit.Test;
28  import org.junit.experimental.categories.Category;
29  
30  import java.io.IOException;
31  
32  /**
33   * Test that the utility works as expected
34   */
35  @Category(SmallTests.class)
36  public class TestHFileArchiveUtil {
37    private Path rootDir = new Path("./");
38    @Test
39    public void testGetTableArchivePath() {
40      assertNotNull(HFileArchiveUtil.getTableArchivePath(rootDir,
41          TableName.valueOf("table")));
42    }
43  
44    @Test
45    public void testGetArchivePath() throws Exception {
46      Configuration conf = new Configuration();
47      FSUtils.setRootDir(conf, new Path("root"));
48      assertNotNull(HFileArchiveUtil.getArchivePath(conf));
49    }
50    
51    @Test
52    public void testRegionArchiveDir() {
53      Path regionDir = new Path("region");
54      assertNotNull(HFileArchiveUtil.getRegionArchiveDir(rootDir,
55          TableName.valueOf("table"), regionDir));
56    }
57    
58    @Test
59    public void testGetStoreArchivePath() throws IOException {
60        byte[] family = Bytes.toBytes("Family");
61      Path tabledir = FSUtils.getTableDir(rootDir,
62          TableName.valueOf("table"));
63      HRegionInfo region = new HRegionInfo(TableName.valueOf("table"));
64      Configuration conf = new Configuration();
65      FSUtils.setRootDir(conf, new Path("root"));
66      assertNotNull(HFileArchiveUtil.getStoreArchivePath(conf, region, tabledir, family));
67    }
68  }