001/*002 * Licensed to the Apache Software Foundation (ASF) under one003 * or more contributor license agreements. See the NOTICE file004 * distributed with this work for additional information005 * regarding copyright ownership. The ASF licenses this file006 * to you under the Apache License, Version 2.0 (the007 * "License"); you may not use this file except in compliance008 * with the License. You may obtain a copy of the License at009 *010 * http://www.apache.org/licenses/LICENSE-2.0011 *012 * Unless required by applicable law or agreed to in writing, software013 * distributed under the License is distributed on an "AS IS" BASIS,014 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.015 * See the License for the specific language governing permissions and016 * limitations under the License.017 */018package org.apache.hadoop.hbase.thrift;019020import static org.junit.Assert.assertNotNull;021import static org.junit.Assert.assertSame;022import static org.junit.Assert.assertTrue;023024import org.apache.hadoop.hbase.CompatibilitySingletonFactory;025import org.apache.hadoop.hbase.HBaseClassTestRule;026import org.apache.hadoop.hbase.testclassification.MetricsTests;027import org.apache.hadoop.hbase.testclassification.SmallTests;028import org.junit.ClassRule;029import org.junit.Test;030import org.junit.experimental.categories.Category;031032/**033 * Test for hadoop 2's version of MetricsThriftServerSourceFactory.034 */035@Category({MetricsTests.class, SmallTests.class})036public class TestMetricsThriftServerSourceFactoryImpl {037 @ClassRule038 public static final HBaseClassTestRule CLASS_RULE =039 HBaseClassTestRule.forClass(TestMetricsThriftServerSourceFactoryImpl.class);040041 @Test042 public void testCompatabilityRegistered() {043 assertNotNull(CompatibilitySingletonFactory.getInstance(044 MetricsThriftServerSourceFactory.class));045 assertTrue(CompatibilitySingletonFactory.getInstance(MetricsThriftServerSourceFactory.class)046 instanceof MetricsThriftServerSourceFactoryImpl);047 }048049 @Test050 public void testCreateThriftOneSource() {051 //Make sure that the factory gives back a singleton.052 assertSame(new MetricsThriftServerSourceFactoryImpl().createThriftOneSource(),053 new MetricsThriftServerSourceFactoryImpl().createThriftOneSource());054055 }056057 @Test058 public void testCreateThriftTwoSource() {059 //Make sure that the factory gives back a singleton.060 assertSame(new MetricsThriftServerSourceFactoryImpl().createThriftTwoSource(),061 new MetricsThriftServerSourceFactoryImpl().createThriftTwoSource());062 }063}