/* Ċ Ġ* ĠCopyright Ġ 2 0 1 8 Ġthe Ġoriginal Ġauthor Ġor Ġauthors . Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġorg . gradle . kotlin . dsl . integration Ċ Ċ import Ġorg . gradle . kotlin . dsl . Plugin Dependencies Spec Scope Ċ Ċ import Ġorg . hamcrest . Core Matchers . equalTo Ċ import Ġorg . hamcrest . Matcher Assert . assertThat Ċ import Ġorg . junit . Test Ċ Ċ import Ġkotlin . reflect . K Class Ċ import Ġkotlin . reflect . full . declared Functions Ċ import Ġkotlin . reflect . full . value Parameters ĊĊ Ċ class ĠGradle Api Parameter Names Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Kotlin Ġdeleg ation Ġgenerated Ġmember Ġhas Ġparameter Ġnames `() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġassert Has Parameter Names ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPlugin Dependencies Spec Scope :: class , Ġ" id ", ĠlistOf ( String :: class ), ĠlistOf (" id ") ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate ĊĠĠĠ Ġfun Ġassert Has Parameter Names ( type : ĠK Class <* >, ĠmethodName : ĠString , Ġparameter Types : ĠList < K Class <* >>, Ġparameter Names : ĠList < String >) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġjava . lang . reflect ĊĠĠĠĠĠĠĠ Ġval Ġjava Method Ġ= Ġtype . java . getDeclared Method ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠmethodName , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ* parameter Types . map Ġ{ Ġit . java Ġ}. to Typed Array () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" java . lang . reflect Ġparameter Ġnames Ġmatch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġjava Method . parameters . map Ġ{ Ġit . name Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ ĠequalTo ( parameter Names ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġkotlin . reflect ĊĠĠĠĠĠĠĠ Ġval Ġkotlin Function Ġ= Ġtype . declared Functions . single Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . name Ġ== ĠmethodName Ġ&& Ġit . value Parameters . map Ġ{ Ġit . type . classifier Ġ} Ġ== Ġparameter Types ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" kotlin . reflect Ġparameter Ġnames Ġmatch ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġkotlin Function . value Parameters . map Ġ{ Ġit . name !! Ġ}, ĊĠĠĠĠĠĠĠĠĠĠĠ ĠequalTo ( parameter Names Ġas ĠList < String ?> ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ