== Why is this an issue?

:func_name: method

include::../description.adoc[]

[source,ruby,diff-id=1,diff-type=noncompliant]
----
class Circle
  def initialize(radius)
    @radius = radius
  end

  def width=(size)
    @radius = size / 2
    update_shape()
  end

  def height=(size) # Noncompliant: duplicates width
    @radius = size / 2
    update_shape()
  end

  def updateShape()
    ...
  end
end
----

include::../inter.adoc[]

[source,ruby,diff-id=1,diff-type=compliant]
----
class Circle
  def initialize(radius)
    @radius = radius
  end

  def width=(width)
    self.diameter = width
  end

  def height=(height)
    self.diameter = height
  end

  def diameter=(diameter)  # Implementation is shared
    @radius = diameter / 2
    update_shape()
  end

  def update_shape()
    # ...
  end
end
----

=== Exceptions

Methods with fewer than 2 statements are ignored.

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

include::../message.adoc[]

include::../highlighting.adoc[]

'''
== Comments And Links
(visible only on this page)

include::../comments-and-links.adoc[]

endif::env-github,rspecator-view[]
