/* Ċ Ġ* ĠCopyright Ġ 2 0 1 0 - 2 0 1 9 ĠJetBrains Ġs . r . o . Ġand ĠKotlin ĠProgramming ĠLanguage Ġcontributors . Ċ Ġ* ĠUse Ġof Ġthis Ġsource Ġcode Ġis Ġgoverned Ġby Ġthe ĠApache Ġ 2 . 0 Ġlicense Ġthat Ġcan Ġbe Ġfound Ġin Ġthe Ġlicense / LICENSE . txt Ġfile . Ċ Ġ*/ Ċ Ċ package Ġorg . jetbrains . kotlin . search Ċ Ċ import Ġcom . intellij . openapi . util . io . File Util Ċ import Ġcom . intellij . psi . search . sear ches . Definitions Scoped Search Ċ import Ġorg . jetbrains . kotlin . as Java . classes . Kt Light Class Ċ import Ġorg . jetbrains . kotlin . idea . test . In Text Directives Utils Ċ import Ġorg . jetbrains . kotlin . test . Test Metadata Ċ import Ġorg . jetbrains . kotlin . idea . test . Test Root Ċ import Ġorg . junit . internal . runners . JUnit 3 8 Class Runner Ċ import Ġorg . junit . runner . RunWith Ċ Ċ @ Test Root (" idea / tests ") Ċ @ Test Metadata (" testData / search / definitions ") Ċ @ RunWith ( JUnit 3 8 Class Runner :: class ) Ċ class ĠDefinitions Search Test Ġ: ĠAbstract Searcher Test () Ġ{ ĊĠĠĠ Ġfun Ġtest Nested Class () Ġ{ ĊĠĠĠĠĠĠĠ Ġdo Test () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġdo Test () Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠtestData File Ġ= ĠtestData File () ĊĊĠĠĠĠĠĠĠ Ġmy Fixture . configure By File ( testData File ) ĊĠĠĠĠĠĠĠ Ġval Ġdirectives Ġ= ĠIn Text Directives Utils . find List With Prefixes ( File Util . load File ( testData File , Ġtrue ), Ġ"// ĠCLASS : Ġ") ĊĠĠĠĠĠĠĠ ĠassertFalse (" Specify ĠCLASS Ġdirective Ġin Ġtest Ġfile ", Ġdirectives . isEmpty ()) ĊĠĠĠĠĠĠĠ Ġval Ġsuper ClassName Ġ= Ġdirectives [ 0 ] ĊĠĠĠĠĠĠĠ Ġval Ġpsi Class Ġ= Ġget Psi Class ( super ClassName ) ĊĠĠĠĠĠĠĠ Ġcheck Result ( testData File , ĠDefinitions Scoped Search . search ( psi Class )) ĊĊĠĠĠĠĠĠĠ Ġval Ġorigin Ġ= Ġ( psi Class Ġas ? ĠK t Light Class )?. kotlin Origin !! ĊĠĠĠĠĠĠĠ Ġcheck Result ( testData File , ĠDefinitions Scoped Search . search ( origin )) ĊĠĠĠ Ġ} Ċ }