package Ġde . plat on 4 2 . intellij . plugins . ca jon . quick fixes Ċ Ċ import Ġcom . intellij . code Inspection . Problem Descriptor Ċ import Ġcom . intellij . openapi . project . Project Ċ import Ġcom . intellij . psi . Psi Expression Ċ import Ġcom . intellij . psi . Psi MethodCall Expression Ċ import Ġde . plat on 4 2 . intellij . plugins . ca jon .* Ċ import Ġde . plat on 4 2 . intellij . plugins . ca jon . Assert J ClassNames . Companion . GU AVA _ ASSERT IONS _ CLASS NAME Ċ Ċ class ĠReplace JUnit Assert MethodCall Quick Fix ( description : ĠString , Ġprivate Ġval Ġreplacement Method : ĠString , Ġprivate Ġval Ġno Expected Expression : ĠBoolean ) Ġ: ĊĠĠĠ ĠAbstract Common Quick Fix ( description ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠCON VERT _ DESCRIPTION Ġ= Ġ" Convert ĠJ Unit Ġassertions Ġto Ġassert J " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Family Name (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠCON VERT _ DESCRIPTION ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġapply Fix ( project : ĠProject , Ġdescriptor : ĠProblem Descriptor ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= Ġdescriptor . start Element ĊĠĠĠĠĠĠĠ Ġval Ġmethod Call Expression Ġ= Ġelement Ġas ? ĠPsi MethodCall Expression Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġargs Ġ= Ġmethod Call Expression . argument List ĊĠĠĠĠĠĠĠ Ġval Ġcount Ġ= Ġargs . expressions . size ĊĠĠĠĠĠĠĠ Ġval Ġactual Expression Ġ= Ġargs . expressions [ count Ġ- Ġ 1 ] Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġ( expected Expressions , Ġmessage Expression ) Ġ= Ġif Ġ( no Expected Expression ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġargs . expressions . get OrNull ( count Ġ- Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġempty Array < Psi Expression >() Ġto Ġmessage ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġargs . expressions [ count Ġ- Ġ 2 ] Ġ?: Ġreturn ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessage Ġ= Ġargs . expressions . get OrNull ( count Ġ- Ġ 3 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠarrayOf ( expected ) Ġto Ġmessage ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġswap Actual And Expected Ġ= Ġ(( expected Expressions . get OrNull ( 0 )?. calculate Constant Value () Ġ== Ġnull ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġ( actual Expression . calculate Constant Value () Ġ!= Ġnull )) ĊĠĠĠĠĠĠĠ Ġval Ġ( expected MethodCall , Ġnew MethodCall ) Ġ= Ġif Ġ( swap Actual And Expected ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Expected MethodCall ( element , Ġreplacement Method , Ġactual Expression ) Ġto ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Assert That ( element , Ġexpected Expressions . single ()) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Expected MethodCall ( element , Ġreplacement Method , Ġ* expected Expressions ) Ġto ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Assert That ( element , Ġactual Expression ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( message Expression Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġas Expression Ġ= Ġcreate Expected MethodCall ( element , ĠMethod Names . AS , Ġmessage Expression ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġas Expression . replace Qualifier ( new MethodCall ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected MethodCall . replace Qualifier ( as Expression ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġexpected MethodCall . replace Qualifier ( new MethodCall ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġnew MethodCall . resolve Method ()?. add As Static Import ( element , ĠGU AVA _ ASSERT IONS _ CLASS NAME ) ĊĠĠĠĠĠĠĠ Ġelement . replace ( expected MethodCall ). short en And Re format () ĊĠĠĠ Ġ} Ċ }