package Ġorg . gradle . kotlin . dsl . integration Ċ Ċ import Ġorg . gradle . kotlin . dsl . fixtures . Abstract Kotlin IntegrationTest Ċ Ċ import Ġorg . hamcrest . Core Matchers . contains String Ċ Ċ import Ġorg . junit . Assert . assertThat Ċ import Ġorg . junit . Test ĊĊ Ċ class ĠDeleg ated Extra Properties IntegrationTest Ġ: ĠAbstract Kotlin IntegrationTest () Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` non - nullable Ġdeleg ated Ġextra Ġproperty Ġaccess Ġof Ġnon - existing Ġextra Ġproperty Ġthrows `() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġwith Build Script (""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmy Task Ġ= Ġtask (" my Task ") Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfoo : ĠInt Ġby Ġmy Task . extra ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfoo . toString () ĊĠĠĠĠĠĠĠ Ġ"" ") ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild And Fail (" my Task "). error , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontains String (" Cannot Ġget Ġnon - null Ġextra Ġproperty Ġ' foo ' Ġas Ġit Ġdoes Ġnot Ġexist ")) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` non - nullable Ġdeleg ated Ġextra Ġproperty Ġaccess Ġof Ġexisting Ġnull Ġextra Ġproperty Ġthrows `() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġwith Build Script (""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmy Task Ġ= Ġtask (" my Task ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfoo : ĠInt ? Ġby Ġextra Ġ{ Ġnull Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfoo : ĠInt Ġby Ġmy Task . extra ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfoo . toString () ĊĠĠĠĠĠĠĠ Ġ"" ") ĊĊĠĠĠĠĠĠĠ ĠassertThat ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuild And Fail (" my Task "). error , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontains String (" Cannot Ġget Ġnon - null Ġextra Ġproperty Ġ' foo ' Ġas Ġit Ġis Ġnull ")) ĊĠĠĠ Ġ} Ċ } Ċ