public async Task InvalidFormat_Throws_JsonException() { string expectedString = "someString"; byte[] objJsonBytes = Encoding.UTF8.GetBytes(expectedString); BasicDeliverEventArgs args = new BasicDeliverEventArgs("tag", 1, false, "", "queue", null, objJsonBytes); BasicDeliverEventArgsValueProvider testValueProvider = new BasicDeliverEventArgsValueProvider(args, typeof(TestClass)); await Assert.ThrowsAsync <InvalidOperationException>(() => testValueProvider.GetValueAsync()); }
public async Task NormalString_Conversion_Succeeds() { string expectedString = "someString"; byte[] stringInBytes = Encoding.UTF8.GetBytes(expectedString); BasicDeliverEventArgs args = new BasicDeliverEventArgs("tag", 1, false, "", "queue", null, stringInBytes); BasicDeliverEventArgsValueProvider testValueProvider = new BasicDeliverEventArgsValueProvider(args, typeof(string)); string actualString = (string)await testValueProvider.GetValueAsync(); Assert.Equal(expectedString, actualString); Assert.Equal(typeof(string), testValueProvider.Type); }
public async Task ByteArray_Conversion_Succeeds() { string expectedString = "someString"; byte[] stringInBytes = Encoding.UTF8.GetBytes(expectedString); BasicDeliverEventArgs exceptedObject = new BasicDeliverEventArgs("tag", 1, false, "", "queue", new BasicProperties(), stringInBytes); BasicDeliverEventArgsValueProvider testValueProvider = new BasicDeliverEventArgsValueProvider(exceptedObject, typeof(byte[])); byte[] actualResult = (byte[])await testValueProvider.GetValueAsync(); Assert.Equal(expectedString, Encoding.UTF8.GetString(actualResult)); Assert.Equal(typeof(byte[]), testValueProvider.Type); }
public async Task BasicDeliverEventArgs_NoConversion_Succeeds() { string expectedString = "someString"; byte[] stringInBytes = Encoding.UTF8.GetBytes(expectedString); BasicDeliverEventArgs exceptedObject = new BasicDeliverEventArgs("tag", 1, false, "", "queue", new BasicProperties(), stringInBytes); BasicDeliverEventArgsValueProvider testValueProvider = new BasicDeliverEventArgsValueProvider(exceptedObject, typeof(BasicDeliverEventArgs)); BasicDeliverEventArgs actualObject = (BasicDeliverEventArgs)await testValueProvider.GetValueAsync(); Assert.Equal(actualObject, exceptedObject); Assert.True(Object.ReferenceEquals(actualObject, exceptedObject)); Assert.Equal(typeof(BasicDeliverEventArgs), testValueProvider.Type); }
public async Task Poco_Conversion_Succeeds() { TestClass expectedObject = new TestClass(1, 1); string expectedStringifiedJson = JsonConvert.SerializeObject(expectedObject); byte[] stringInBytes = Encoding.UTF8.GetBytes(expectedStringifiedJson); BasicDeliverEventArgs args = new BasicDeliverEventArgs("tag", 1, false, "", "queue", null, stringInBytes); BasicDeliverEventArgsValueProvider testValueProvider = new BasicDeliverEventArgsValueProvider(args, typeof(TestClass)); TestClass actualObject = (TestClass)await testValueProvider.GetValueAsync(); Assert.Equal(expectedStringifiedJson, JsonConvert.SerializeObject(actualObject)); Assert.Equal(typeof(TestClass), testValueProvider.Type); Assert.Equal(expectedObject.X, actualObject.X); Assert.Equal(expectedObject.Y, actualObject.Y); }