package ecologylab.bigsemantics.metametadata;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import org.junit.Before;
import org.junit.Test;
import ecologylab.io.NamedInputStream;
import ecologylab.serialization.SIMPLTranslationException;
import ecologylab.serialization.formatenums.Format;
/**
*
* @author quyin
*/
public class TestMetaMetadataRepositoryLoader
{
MetaMetadataRepositoryLoader loader;
@Before
public void initLoader()
{
loader = new MetaMetadataRepositoryLoader();
}
@Test
public void testDeserializeRepositoryFile() throws SIMPLTranslationException, IOException
{
File sampleRepoFile = new File("data/sampleRepositoryFileSearch.xml");
assertTrue(sampleRepoFile.exists());
InputStream istream = new FileInputStream(sampleRepoFile);
List<NamedInputStream> istreams = new ArrayList<NamedInputStream>();
istreams.add(new NamedInputStream(sampleRepoFile));
List<MetaMetadataRepository> repos = loader.deserializeRepositories(istreams, Format.XML);
assertEquals(1, repos.size());
MetaMetadataRepository repo = repos.get(0);
assertNotNull(repo);
for (MetaMetadata mmd : repo.repositoryByName)
System.out.println(mmd.getName());
MetaMetadata search = repo.getMMByName("search");
assertNotNull(search);
MetaMetadata googleSearch = repo.getMMByName("google_search");
assertNotNull(googleSearch);
}
}