// ĠCopyright Ġ 2 0 0 0 - 2 0 2 0 ĠJetBrains Ġs . r . o . ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe ĠLICENSE Ġfile . Ċ package Ġorg . jetbrains . idea . maven . project . actions Ċ Ċ import Ġcom . intellij . openapi . action System . Common Data Keys Ċ import Ġcom . intellij . openapi . application . Write Action Ċ import Ġcom . intellij . psi . Psi Document Manager Ċ import Ġcom . intellij . psi . Psi Manager Ċ import Ġcom . intellij . test Framework . Map DataContext Ċ import Ġcom . intellij . test Framework . Test ActionEvent Ċ import Ġorg . jetbrains . idea . maven . Maven Import ing TestCase Ċ Ċ class ĠAdd File As Maven Project Action Test Ġ: ĠMaven Import ing TestCase () Ġ{ ĊĠ Ġfun Ġtest Files Saved On Action () Ġ{ ĊĠĠĠ Ġval Ġproject P om Ġ= Ġcreate Project P om ("< groupId > test </ groupId >" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"< artifactId > project </ artifactId >" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"< version > 1 </ version >") ĊĊĠĠĠ Ġval Ġpsi File Ġ= ĠPsi Manager . getInstance ( my Project ). find File ( project P om ) !! ĊĠĠĠ Ġval Ġdocument Ġ= ĠPsi Document Manager . getInstance ( my Project ) ĊĠĠĠĠĠ Ġ. getDocument ( psi File ) !! ĊĊĠĠĠ Ġ// Ġmake Ġa Ġchange Ġbut Ġdo Ġnot Ġsave ĊĠĠĠ ĠWrite Action . run < Throwable > Ġ{ ĊĠĠĠĠĠ Ġdocument . setText ( create P om Xml ("< groupId > test </ groupId >" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"< artifactId > project - new </ artifactId >" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ"< version > 1 </ version > ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġval Ġcontext Ġ= ĠMap DataContext () ĊĠĠĠ Ġcontext . put ( Common Data Keys . PROJECT , Ġmy Project ) ĊĠĠĠ Ġcontext . put ( Common Data Keys . VIRTUAL _ FILE , Ġproject P om ) ĊĠĠĠ Ġval Ġevent Ġ= ĠTest ActionEvent ( context ) ĊĠĠĠ ĠAdd File As Maven Project Action (). action Performed ( event ) ĊĊĠĠĠ Ġval Ġpromise Ġ= Ġmy Projects Manager . waitFor Import Completion () ĊĠĠĠ Ġmy Projects Manager . perform Scheduled Import In Tests () ĊĠĠĠ ĠassertTrue (" Import Ġdid Ġnot Ġsucceed ", Ġpromise . is Succeeded ) ĊĠĠĠ Ġassert Modules (" project - new ") ĊĠ Ġ} Ċ Ċ }