diff --git a/src/client/Ruby/ms-rest/lib/ms_rest/serialization.rb b/src/client/Ruby/ms-rest/lib/ms_rest/serialization.rb index c76eae2797485..2998c0da6f3d7 100644 --- a/src/client/Ruby/ms-rest/lib/ms_rest/serialization.rb +++ b/src/client/Ruby/ms-rest/lib/ms_rest/serialization.rb @@ -315,7 +315,12 @@ def serialize_composite_type(mapper, object, object_name) unless model_props.nil? model_props.each do |key, value| - instance_variable = object.instance_variable_get("@#{key}") + begin + instance_variable = object.instance_variable_get("@#{key}") + rescue NameError + fail ValidationError, "instance variable '#{key}' is expected on '#{object.class}'." + end + if !instance_variable.nil? && instance_variable.respond_to?(:validate) instance_variable.validate end