### Question:
RepositoryMetastoreProvider implements MetastoreProvider { @Override public IMetaStore getMetastore() { Repository repository = kettleRepositoryLocator.getRepository(); if ( repository != null ) { return repository.getMetaStore(); } return null; } RepositoryMetastoreProvider( KettleRepositoryLocator kettleRepositoryLocator ); @Override IMetaStore getMetastore();  }### Answer:
@Test public void testGetMetastoreNullRepository() { when( kettleRepositoryLocator.getRepository() ).thenReturn( null ); assertNull( repositoryMetastoreProvider.getMetastore() ); }
@Test public void testGetMetastoreSuccess() { Repository repository = mock( Repository.class ); IMetaStore metaStore = mock( IMetaStore.class ); when( repository.getMetaStore() ).thenReturn( metaStore ); when( kettleRepositoryLocator.getRepository() ).thenReturn( repository ); assertEquals( metaStore, repositoryMetastoreProvider.getMetastore() ); }