public void TestValidReaderGeneration() { Dictionary <ArchiveFactory.Type, Type> validIterators = new Dictionary <ArchiveFactory.Type, Type>() { { ArchiveFactory.Type.Tar, typeof(SharpZipTarArchiveIterator) }, { ArchiveFactory.Type.TarGz, typeof(SharpZipTarArchiveIterator) }, { ArchiveFactory.Type.TarBz2, typeof(SharpZipTarArchiveIterator) } }; foreach (KeyValuePair <ArchiveFactory.Type, Type> pair in validIterators) { string target = Path.Combine(Directory.GetCurrentDirectory(), @"XenAdminTests\TestResources\emptyfile.bz2"); using (MemoryStream ms = new MemoryStream(File.ReadAllBytes(target))) { ArchiveIterator providedStream = ArchiveFactory.Reader(pair.Key, ms); Assert.AreEqual(providedStream.GetType(), pair.Value); } } }