@troessner I changed the method name and had to change it as well in smell_detector where it is called. I still have a lot of calls to adopt throughout the code and I do not understand how they work. The smells are calling super.adopt. The smells inherit from smell_detector which does not define an adopt method. 

From my understanding of Ruby, super references the class's superclass. I hadn't seen it used by calling a method on it before. smell_detector does not seem to have an explicitly defined superclass.

Doing a grep shows adopt being only defined in hash_extensions.