package Ġorg . jetbrains . research . p yn ose . plugin . ins pe ctions . unittest . disabled Ċ Ċ import Ġcom . intellij . code Inspection . Local Inspection Tool Session Ċ import Ġcom . intellij . code Inspection . Problems Holder Ċ import Ġcom . intellij . openapi . diagnostic . Logger Ċ import Ġcom . intellij . psi . Psi Element Visitor Ċ import Ġcom . jetbrains . python . psi .* Ċ import Ġorg . jetbrains . research . p yn ose . plugin . ins pe ctions . Abstract Test S mell Inspection Ċ import Ġorg . jetbrains . research . p yn ose . plugin . ins pe ctions . common . Magic Number Test S mell Visitor Ċ import Ġorg . jetbrains . research . p yn ose . plugin . util . Unit test Ins pe ctions Utils Ċ Ċ class ĠMagic Number Test Test S mell Unit test Inspection Ġ: ĠAbstract Test S mell Inspection () Ġ{ ĊĠĠĠ Ġprivate Ġval ĠLOG Ġ= ĠLogger . getInstance ( Magic Number Test Test S mell Unit test Inspection :: class . java ) ĊĊĠĠĠ Ġoverride Ġfun Ġbuild Unit test Visitor ( holder : ĠPro blems Holder , Ġsession : ĠLocal Inspection Tool Session ): ĠPsi Element Visitor Ġ{ ĊĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠMagic Number Test S mell Visitor ( holder , Ġsession ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġvisit Py Call Expression ( call Expression : ĠPy Call Expression ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . visit Py Call Expression ( call Expression ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġchild Ġ= Ġcall Expression . callee ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( child Ġ! is ĠPy Reference Expression Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ! Unit test Ins pe ctions Utils . is Unit test Call Assert Method ( child ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ|| Ġ! Unit test Ins pe ctions Utils . isValid Unit test Parent ( call Expression ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( call Expression . arguments . any Ġ{ Ġobj : ĠPy Expression ? Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( obj Ġis ĠPy Numeric Literal Expression Ġ&& Ġ! ignored Numbers . contains ( obj . text )) Ġ|| ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( obj Ġis ĠPy Binary Expression ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġobj . children . any Ġ{ Ġchild Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchild Ġis ĠPy Numeric Literal Expression Ġ&& ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ! ignored Numbers . contains ( child . text ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġregister Magic Number ( call Expression ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }