public void ExifSignedRationalArrayTests(ExifTag tag) { SignedRational[] expected = new[] { new SignedRational(21, 42) }; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifSignedRationalArray)value; Assert.Equal(expected, typed.Value); }
public void ExifUndefinedArrayTests(ExifTag tag) { byte[] expected = new[] { byte.MaxValue }; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifByteArray)value; Assert.Equal(expected, typed.Value); }
public void ExifStringTests(ExifTag tag) { const string expected = "ImageSharp"; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(0M)); Assert.True(value.TrySetValue(expected)); var typed = (ExifString)value; Assert.Equal(expected, typed.Value); }
public void ExifNumberArrayTests(ExifTag tag) { Number[] expected = new[] { new Number(uint.MaxValue) }; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifNumberArray)value; Assert.Equal(expected, typed.Value); }
public void ExifShortArrayTests(ExifTag tag) { ushort[] expected = new[] { ushort.MaxValue }; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifShortArray)value; Assert.Equal(expected, typed.Value); }
public void ExifLongTests(ExifTag tag) { const uint expected = uint.MaxValue; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifLong)value; Assert.Equal(expected, typed.Value); }
public void ExifUndefinedTests(ExifTag tag) { const byte expected = byte.MaxValue; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue((int)expected)); Assert.True(value.TrySetValue(expected)); var typed = (ExifByte)value; Assert.Equal(expected, typed.Value); }
public void ExifRationalTests(ExifTag tag) { var expected = new Rational(21, 42); ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(new SignedRational(expected.ToDouble()))); Assert.True(value.TrySetValue(expected)); var typed = (ExifRational)value; Assert.Equal(expected, typed.Value); }
public void ExifShortTests(ExifTag tag) { const ushort expected = (ushort)short.MaxValue; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue((int)expected)); Assert.True(value.TrySetValue((short)expected)); Assert.True(value.TrySetValue(expected)); var typed = (ExifShort)value; Assert.Equal(expected, typed.Value); }
public void ExifNumberTests(ExifTag tag) { Number expected = ushort.MaxValue; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue((uint)expected)); Assert.True(value.TrySetValue((int)expected)); Assert.True(value.TrySetValue(expected)); var typed = (ExifNumber)value; Assert.Equal(expected, typed.Value); }
public void ExifUcs2StringTests(ExifTag tag) { const string expected = "Dan Petitt"; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(123)); Assert.True(value.TrySetValue(expected)); var typed = (ExifUcs2String)value; Assert.Equal(expected, typed.Value); Assert.True(value.TrySetValue(Encoding.GetEncoding("UCS-2").GetBytes(expected))); Assert.Equal(expected, typed.Value); }
public void ExifNumberArrayTests(ExifTag tag) { Number[] expected = new[] { new Number(uint.MaxValue) }; ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(expected.ToString())); Assert.True(value.TrySetValue(expected)); var typed = (ExifNumberArray)value; Assert.Equal(expected, typed.Value); Assert.True(value.TrySetValue(int.MaxValue)); Assert.Equal(new[] { (Number)int.MaxValue }, value.GetValue()); Assert.True(value.TrySetValue(new[] { 1u, 2u, 5u })); Assert.Equal(new[] { (Number)1u, (Number)2u, (Number)5u }, value.GetValue()); Assert.True(value.TrySetValue(new[] { (short)1, (short)2, (short)5 })); Assert.Equal(new[] { (Number)(short)1, (Number)(short)2, (Number)(short)5 }, value.GetValue()); }
public void ExifEncodedStringTests(ExifTag tag) { foreach (object code in Enum.GetValues(typeof(EncodedString.CharacterCode))) { var charCode = (EncodedString.CharacterCode)code; Assert.Equal(ExifEncodedStringHelpers.CharacterCodeBytesLength, ExifEncodedStringHelpers.GetCodeBytes(charCode).Length); const string expectedText = "test string"; var expected = new EncodedString(charCode, expectedText); ExifValue value = ExifValues.Create(tag); Assert.False(value.TrySetValue(123)); Assert.True(value.TrySetValue(expected)); var typed = (ExifEncodedString)value; Assert.Equal(expected, typed.Value); Assert.Equal(expectedText, (string)typed.Value); Assert.Equal(charCode, typed.Value.Code); } }