@Test
public void shouldBeAbleToDeserializeAPersonWithDog() throws Exception {

	InputStream stream = new ByteArrayInputStream("<person><name>Renan</name><dog><name>Brutus</name><age>7</age></dog></person>".getBytes());
	
	
	when(provider.parameterNamesFor(walk.getMethod())).thenReturn(new String[] {"person"});
	
	Object[] deserialized = deserializer.deserialize(stream, walk);
	
	assertThat(deserialized.length, is(1));
	assertThat(deserialized[0], is(instanceOf(Person.class)));
	Person person = (Person) deserialized[0];
	assertThat(person.name, is("Renan"));
	assertThat(person.dog.name, is("Brutus"));
	assertThat(person.dog.age, is(7));
}