コード例 #1
0
 public void Setup()
 {
     if (LibDDS.IsAvailable == false)
     {
         Environment.CurrentDirectory = TestContext.CurrentContext.TestDirectory;
         LibDDS.FindDependencies(new FileProvider());
     }
 }
コード例 #2
0
        public void TestGetImageBytes()
        {
            var ddsPath  = Path.Combine(TestContext.CurrentContext.TestDirectory, "Samples", "Resources", "Texture", "4d0ab27f42b14326ed4987ed25566663.Texture-Resource.v9a8d4bbd19b4cd55.payload.v0.noVariants.dds");
            var ddsBytes = File.ReadAllBytes(ddsPath);

            var imageBytes = LibDDS.GetImageBytesFromDds(ddsBytes, 0, 0, LibDDS.ConversionOptions.CodecType.CODEC_PNG);
            var header     = BitConverter.ToUInt64(imageBytes, 0);

            Assert.AreEqual(PngHeader, header);
        }
コード例 #3
0
        public void TestLibDdsNotAvailable()
        {
            var fileProvider = new MockFileProvider();

            fileProvider.FileExistsResultQueue.Enqueue(false);

            LibDDS.FindDependencies(fileProvider);

            Assert.IsFalse(LibDDS.IsAvailable);
        }
コード例 #4
0
        public void TestGetImageBytesBadDds()
        {
            var ddsPath  = Path.Combine(TestContext.CurrentContext.TestDirectory, "Samples", "Resources", "Texture", "4d0ab27f42b14326ed4987ed25566663.Texture-Resource.v9a8d4bbd19b4cd55.payload.v0.noVariants");
            var ddsBytes = File.ReadAllBytes(ddsPath);

            var ex = Assert.Throws <Exception>(() =>
            {
                LibDDS.GetImageBytesFromDds(ddsBytes, 0, 0, LibDDS.ConversionOptions.CodecType.CODEC_PNG);
            });

            Assert.AreEqual("Failed to read DDS: ERROR LoadFromDDSMemory failed with code: 80004005\n", ex.Message);
        }
コード例 #5
0
        public void TestGetImageBytes_NoLibDDS()
        {
            var ddsPath  = Path.Combine(TestContext.CurrentContext.TestDirectory, "Samples", "Resources", "Texture", "4d0ab27f42b14326ed4987ed25566663.Texture-Resource.v9a8d4bbd19b4cd55.payload.v0.noVariants.dds");
            var ddsBytes = File.ReadAllBytes(ddsPath);

            var fileProvider = new MockFileProvider();

            fileProvider.FileExistsResultQueue.Enqueue(false);
            LibDDS.FindDependencies(fileProvider);

            Assert.Throws <Exception>(() =>
            {
                LibDDS.GetImageBytesFromDds(ddsBytes, 0, 0, LibDDS.ConversionOptions.CodecType.CODEC_PNG);
            });
        }