То, что вы там набрали, работает, поэтому что-то не так. Я предполагаю, что вы сделали что-то вроде:
String part = "Test"
String str="Test2"
def list1=["${part}1","${part}2","Test3"]
def found = list1.contains(str)
в этом случае found
будет ложным ... потому что:
"${'test'}"
равно не равно "test"
, для некоторых определений равно ... хотя печать их обоих заставляет вас так думать.
И вот почему: Отличный результат использования equals () и == для GStringImpl