public void InitPropVariantFromInt32VectorTest() { var pv = new PROPVARIANT(); InitPropVariantFromInt32Vector(new int[] { 1, 2, 3, 4 }, 4, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_I4)); Assert.That(pv.Value as IEnumerable <int>, Is.Not.Null.And.Exactly(4).Items); pv.Dispose(); }
public void InitPropVariantFromBufferTest() { var pv = new PROPVARIANT(); InitPropVariantFromBuffer(new byte[] { 1, 2, 3, 4 }, 4, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_UI1)); Assert.That(pv.Value as IEnumerable <byte>, Is.Not.Null.And.Exactly(4).Items); pv.Dispose(); }
public void InitPropVariantFromFileTimeVectorTest() { var pv = new PROPVARIANT(); InitPropVariantFromFileTimeVector(new[] { DateTime.Now.ToFileTimeStruct(), DateTime.Today.ToFileTimeStruct() }, 2, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_FILETIME)); Assert.That(pv.Value as IEnumerable <FILETIME>, Is.Not.Null.And.Exactly(2).Items); pv.Dispose(); }
public void InitPropVariantFromDoubleVectorTest() { var pv = new PROPVARIANT(); InitPropVariantFromDoubleVector(new[] { 1f, 2.0, 255.3, 0.1 }, 4, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_R8)); Assert.That(pv.Value as IEnumerable <double>, Is.Not.Null.And.Exactly(4).Items.And.Contains(0.1)); pv.Dispose(); }
public void InitPropVariantFromBooleanVectorTest() { var pv = new PROPVARIANT(); InitPropVariantFromBooleanVector(new[] { true, false, true, true }, 4, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_BOOL)); Assert.That(pv.Value as IEnumerable <bool>, Is.Not.Null.And.Exactly(4).Items); pv.Dispose(); }
public void InitPropVariantFromStringVectorTest() { var pv = new PROPVARIANT(); InitPropVariantFromStringVector(new [] { "1", "2", "3", "4" }, 4, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_LPWSTR)); Assert.That(pv.Value as IEnumerable <string>, Is.Not.Null.And.Exactly(4).Items); pv.Dispose(); }
public void InitPropVariantFromFileTimeTest() { var pv = new PROPVARIANT(); var ft = DateTime.Now.ToFileTimeStruct(); InitPropVariantFromFileTime(ref ft, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_FILETIME)); Assert.That(pv.Value, Is.EqualTo(ft)); pv.Dispose(); }
public void InitPropVariantFromCLSIDTest() { var pv = new PROPVARIANT(); var g = Guid.NewGuid(); InitPropVariantFromCLSID(g, pv); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_CLSID)); Assert.That(pv.Value, Is.EqualTo(g)); pv.Dispose(); }
public static bool TryGetMetadataProperty <T>(this IWICMetadataQueryReader queryReader, string propertyPath, out T value) { if (queryReader == null) { throw new ArgumentNullException("queryReader"); } value = default(T); PROPVARIANT propvariant = default(PROPVARIANT); int metadataByName = queryReader.GetMetadataByName(propertyPath, out propvariant); if (-2003292352 != metadataByName) { GraphicsInteropNativeMethods.CheckNativeResult(metadataByName); value = (T)((object)propvariant.Value); propvariant.Dispose(); return(true); } propvariant.Dispose(); return(false); }
public void InitPropVariantFromPropVariantVectorElemTest() { var pv = new PROPVARIANT(new[] { 1, 2, 3, 4 }); var pvc = new PROPVARIANT(); InitPropVariantFromPropVariantVectorElem(pv, 2, pvc); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_VECTOR | VarEnum.VT_I4)); Assert.That(pvc.VarType, Is.EqualTo(VarEnum.VT_I4)); Assert.That(pvc.Value, Is.TypeOf <int>().And.EqualTo(3)); pv.Dispose(); pvc.Dispose(); pv = new PROPVARIANT(3.14f); pvc = new PROPVARIANT(); InitPropVariantFromPropVariantVectorElem(pv, 0, pvc); Assert.That(pv.VarType, Is.EqualTo(VarEnum.VT_R4)); Assert.That(pvc.VarType, Is.EqualTo(VarEnum.VT_R4)); Assert.That(pvc.Value, Is.TypeOf <float>().And.EqualTo(3.14f)); pv.Dispose(); pvc.Dispose(); }