// ĠCopyright Ġ 2 0 0 0 - 2 0 1 9 Ġ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 . plugins . gradle . model Ċ Ċ import Ġorg . jetbrains . plugins . gradle . Default External Dependency Id Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Assert . assertNot Equals Ċ import Ġorg . junit . Test Ċ Ċ class ĠAbstract External Dependency Test Ġ{ ĊĊĠ Ġ@ Test ĊĠ Ġfun Ġtest Equals () Ġ{ ĊĠĠĠ ĠassertEquals (" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (), Ġ" c : c : 1 ". lib ()), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (), Ġ" c : c : 1 ". lib ())) ĊĊĠĠĠ ĠassertEquals (" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (). depends (" c : c : 1 ". lib ())), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (). depends (" c : c : 1 ". lib ()))) ĊĊĠĠĠ Ġval Ġdep A Ġ= Ġ" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (). depends (" c : c : 1 ". lib ())) ĊĠĠĠ Ġval Ġdep A 1 Ġ= Ġ" a : a : 1 ". lib (). depends (" b : b : 1 ". lib (), Ġ" c : c : 1 ". lib ()) ĊĠĠĠ Ġassert Not Equals ( dep A , Ġdep A 1 ) ĊĠĠĠ Ġassert Not Equals ( dep A 1 , Ġdep A ) ĊĊĠĠĠ Ġval Ġdep B Ġ= Ġ" b : b : 1 ". lib () ĊĠĠĠ Ġval Ġdep C Ġ= Ġ" c : c : 1 ". lib () ĊĠĠĠ Ġval Ġdep D Ġ= Ġ" d : d : 1 ". lib () ĊĠĠĠ Ġdep B . depends ( dep C ) ĊĠĠĠ Ġdep C . depends ( dep D ) ĊĠĠĠ Ġdep D . depends ( dep B ) ĊĠĠĠ ĠassertEquals (" a : a : 1 ". lib (). depends ( dep B , Ġdep D , Ġdep C ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" a : a : 1 ". lib (). depends ( dep B , Ġdep D , Ġdep C )) ĊĠ Ġ} Ċ } Ċ Ċ private Ġfun ĠString . lib (): ĠAbstract External Dependency Ġ{ ĊĠ Ġval Ġsplit Ġ= Ġsplit (": ") ĊĠ Ġreturn ĠMy Abstract External Dependency ( split [ 0 ], Ġsplit [ 1 ], Ġsplit [ 2 ]) Ċ } Ċ Ċ private Ġclass ĠMy Abstract External Dependency ( group : ĠString , Ġname : ĠString , Ġversion : ĠString ) Ġ: ĊĠ ĠAbstract External Dependency ( Default External Dependency Id ( group , Ġname , Ġversion ), Ġ"", Ġnull ) Ċ Ċ private Ġfun ĠAbstract External Dependency . depends ( var arg Ġdependencies : ĠAbstract External Dependency ): ĠAbstract External Dependency Ġ{ ĊĠ Ġthis . dependencies . addAll ( dependencies ) ĊĠ Ġreturn Ġthis Ċ } ĊĊ