package Ġm oxy . compiler Ċ Ċ import Ġorg . intellij . lang . annotations . Language Ċ import Ġorg . junit . Test Ċ Ċ class ĠView State Negative Test Kt Ġ: ĠCompiler Test () Ġ{ ĊĊĠĠĠ Ġ// TODO : Ġcan 't Ġtest Ġit Ġfor Ġkotlin Ġsources ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġsuccess Without Inject ViewState On Presenter () Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Language (" JAVA ") Ġval Ġpresenter Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . Inject ViewState ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . M vp Presenter ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . view . Test View ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġpublic Ġclass ĠWithout Inject ViewState Presenter Ġextends ĠM vp Presenter < Test View > Ġ{ ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . to Java File () ĊĊĠĠĠĠĠĠĠ Ġval Ġcompilation Ġ= Ġcompile Sources With Processor ( presenter ) ĊĠĠĠĠĠĠĠ Ġcompilation . assert Succeeded Without Warnings () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Without Inject ViewState () Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Language (" JAVA ") Ġval Ġpresenter Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . M vp Presenter ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġpublic Ġclass ĠWithout Inject ViewState Presenter Ġextends ĠM vp Presenter < Empty View > Ġ{ ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . to Java File () ĊĊĠĠĠĠĠĠĠ Ġ@ Language (" JAVA ") Ġval Ġview Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . M vp View ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . view state . strategy . AddTo End Single Strategy ; ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . view state . strategy . State Strategy Type ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ State Strategy Type ( AddTo End Single Strategy . class ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpublic Ġinterface ĠEmpty View Ġextends ĠM vp View Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ""" . to Java File () ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . view state . M vp ViewState ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġpublic Ġclass ĠEmpty View ${ " $$ "} State Ġextends ĠM vp ViewState < Empty View > Ġimplements ĠEmpty View Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . to Java File () ĊĊĠĠĠĠĠĠĠ Ġval Ġpresenter Compilation Ġ= Ġcompile Sources With Processor ( presenter , Ġview ) ĊĠĠĠĠĠĠĠ Ġval Ġview State Compilation Ġ= Ġcompile Sources ( view , Ġexpected ) ĊĊĠĠĠĠĠĠĠ Ġassert Expected Files Generated ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpresenter Compilation . generated Files (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview State Compilation . generated Files ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġerror If Inject ViewState Not On Presenter () Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Language (" JAVA ") Ġval Ġpresenter Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimport Ġm oxy . Inject ViewState ; ĊĠĠĠĠĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Inject ViewState ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpublic Ġclass ĠInject ViewState Not On Presenter Ġ{ ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ""" . to Java File () ĊĊĠĠĠĠĠĠĠ Ġ// ĠTODO Ġadd Ġhuman Ġreadable Ġmessage Ġfor Ġ@ Inject ViewState Ġbeing Ġplaced Ġnot Ġon ĠM vp Presenter Ġsubclass ĊĊĠĠĠĠĠĠĠ Ġval Ġcompilation Ġ= Ġcompile Sources With Processor ( presenter ) ĊĠĠĠĠĠĠĠ Ġcompilation . assert Failed () ĊĠĠĠ Ġ} Ċ }