This is an automated email from the ASF dual-hosted git repository. jamesfredley pushed a commit to branch improve-gh-ci-speed in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit ae9b1abd17d762058b828eaf5c8bf64cb7dfe563 Author: James Fredley <[email protected]> AuthorDate: Sun Jan 25 12:40:14 2026 -0500 Use @RestoreSystemProperties for cleaner test isolation Replace manual system property save/restore in setup/cleanup methods with Spock's @RestoreSystemProperties annotation. This reduces boilerplate code and ensures properties are reliably restored even if tests fail. Changes apply to multi-tenancy tests across datamapping-core-test, hibernate5, mongodb, and interceptors modules that use Spock 2.3+. --- .../MultiTenancyBidirectionalManyToManySpec.groovy | 6 ++---- .../hibernate/connections/SchemaMultiTenantSpec.groovy | 11 ++--------- .../orm/hibernate/connections/SingleTenantSpec.groovy | 11 ++--------- .../gorm/mongo/connections/MultiTenancySpec.groovy | 10 ++-------- .../mongo/connections/SchemaBasedMultiTenancySpec.groovy | 10 ++-------- .../gorm/mongo/connections/SingleTenancySpec.groovy | 10 ++-------- .../multitenancy/MongoStaticApiMultiTenancySpec.groovy | 10 ++-------- .../multitenancy/database/DatabasePerTenantSpec.groovy | 8 ++------ .../partitioned/MultiTenantServiceTransformSpec.groovy | 10 ++-------- .../partitioned/PartitionMultiTenancySpec.groovy | 10 ++-------- .../multitenancy/schema/SchemaPerTenantSpec.groovy | 10 ++-------- .../grails/gorm/tests/CurrentTenantTransformSpec.groovy | 10 ++-------- .../groovy/grails/gorm/tests/TenantServiceSpec.groovy | 9 ++------- .../web/interceptors/UrlMappingMatcherSpec.groovy | 16 ++-------------- 14 files changed, 28 insertions(+), 113 deletions(-) diff --git a/grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/multitenancy/MultiTenancyBidirectionalManyToManySpec.groovy b/grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/multitenancy/MultiTenancyBidirectionalManyToManySpec.groovy index c6dd06031e..c36b25199b 100644 --- a/grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/multitenancy/MultiTenancyBidirectionalManyToManySpec.groovy +++ b/grails-data-hibernate5/core/src/test/groovy/grails/gorm/tests/multitenancy/MultiTenancyBidirectionalManyToManySpec.groovy @@ -32,12 +32,14 @@ import org.hibernate.dialect.H2Dialect import spock.lang.AutoCleanup import spock.lang.Ignore import spock.lang.Issue +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification /** * Created by puneetbehl on 21/03/2018. */ +@RestoreSystemProperties class MultiTenancyBidirectionalManyToManySpec extends Specification { final Map config = [ @@ -64,10 +66,6 @@ class MultiTenancyBidirectionalManyToManySpec extends Specification { userService = datastore.getService(UserService) } - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - @Rollback @Issue("https://github.com/grails/grails-data-hibernate5/issues/58") void "test hasMany and 'in' query with multi-tenancy" () { diff --git a/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SchemaMultiTenantSpec.groovy b/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SchemaMultiTenantSpec.groovy index 4433230d09..701700e0f0 100644 --- a/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SchemaMultiTenantSpec.groovy +++ b/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SchemaMultiTenantSpec.groovy @@ -30,6 +30,7 @@ import org.hibernate.resource.jdbc.spi.JdbcSessionOwner import org.springframework.orm.hibernate5.SessionHolder import org.springframework.transaction.support.TransactionSynchronizationManager import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification @@ -38,17 +39,9 @@ import java.sql.Connection /** * Created by graemerocher on 20/07/2016. */ +@RestoreSystemProperties class SchemaMultiTenantSpec extends Specification { - def setup() { - // Ensure other specs don't leak a tenant id and skip the expected TenantNotFoundException. - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test a database per tenant multi tenancy"() { given:"A configuration for multiple data sources" System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") diff --git a/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SingleTenantSpec.groovy b/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SingleTenantSpec.groovy index a60857236c..5c32e23af2 100644 --- a/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SingleTenantSpec.groovy +++ b/grails-data-hibernate5/core/src/test/groovy/org/grails/orm/hibernate/connections/SingleTenantSpec.groovy @@ -31,6 +31,7 @@ import org.grails.orm.hibernate.HibernateDatastore import org.hibernate.Session import org.hibernate.dialect.H2Dialect import org.hibernate.resource.jdbc.spi.JdbcSessionOwner +import spock.util.environment.RestoreSystemProperties import spock.lang.Specification import java.sql.Connection @@ -38,17 +39,9 @@ import java.sql.Connection /** * Created by graemerocher on 07/07/2016. */ +@RestoreSystemProperties class SingleTenantSpec extends Specification { - def setup() { - // Ensure other specs don't leak a tenant id and skip the expected TenantNotFoundException. - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test a database per tenant multi tenancy"() { given:"A configuration for multiple data sources" System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") diff --git a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/MultiTenancySpec.groovy b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/MultiTenancySpec.groovy index dd6630c574..04032e20ea 100644 --- a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/MultiTenancySpec.groovy +++ b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/MultiTenancySpec.groovy @@ -30,6 +30,7 @@ import org.grails.datastore.mapping.mongo.config.MongoSettings import org.grails.datastore.mapping.multitenancy.AllTenantsResolver import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import static com.mongodb.client.model.Filters.* @@ -37,6 +38,7 @@ import static com.mongodb.client.model.Filters.* /** * Created by graemerocher on 13/07/2016. */ +@RestoreSystemProperties class MultiTenancySpec extends AutoStartedMongoSpec { @Shared @AutoCleanup MongoDatastore datastore @@ -55,14 +57,6 @@ class MultiTenancySpec extends AutoStartedMongoSpec { this.datastore = new MongoDatastore(config, getDomainClasses() as Class[]) } - void setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test persist and retrieve entities with multi tenancy"() { setup: diff --git a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SchemaBasedMultiTenancySpec.groovy b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SchemaBasedMultiTenancySpec.groovy index d6f243e307..b30ad424fa 100644 --- a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SchemaBasedMultiTenancySpec.groovy +++ b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SchemaBasedMultiTenancySpec.groovy @@ -26,11 +26,13 @@ import org.grails.datastore.mapping.mongo.config.MongoSettings import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundException import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared /** * Created by graemerocher on 14/07/2016. */ +@RestoreSystemProperties class SchemaBasedMultiTenancySpec extends AutoStartedMongoSpec { @Shared @AutoCleanup MongoDatastore datastore @@ -49,14 +51,6 @@ class SchemaBasedMultiTenancySpec extends AutoStartedMongoSpec { this.datastore = new MongoDatastore(config, getDomainClasses() as Class[]) } - void setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test no tenant id"() { when: CompanyB.DB diff --git a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SingleTenancySpec.groovy b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SingleTenancySpec.groovy index 00a4dce4ca..0d08660749 100644 --- a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SingleTenancySpec.groovy +++ b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/connections/SingleTenancySpec.groovy @@ -31,6 +31,7 @@ import org.grails.datastore.mapping.mongo.config.MongoSettings import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundException import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import static com.mongodb.client.model.Filters.eq @@ -38,6 +39,7 @@ import static com.mongodb.client.model.Filters.eq /** * Created by graemerocher on 07/07/2016. */ +@RestoreSystemProperties class SingleTenancySpec extends AutoStartedMongoSpec { @Shared @AutoCleanup MongoDatastore datastore @@ -64,14 +66,6 @@ class SingleTenancySpec extends AutoStartedMongoSpec { this.datastore = new MongoDatastore(config, getDomainClasses() as Class[]) } - void setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test no tenant id"() { when: CompanyB.DB diff --git a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/multitenancy/MongoStaticApiMultiTenancySpec.groovy b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/multitenancy/MongoStaticApiMultiTenancySpec.groovy index 61a66f24e0..3398777ff5 100644 --- a/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/multitenancy/MongoStaticApiMultiTenancySpec.groovy +++ b/grails-data-mongodb/core/src/test/groovy/org/grails/datastore/gorm/mongo/multitenancy/MongoStaticApiMultiTenancySpec.groovy @@ -29,8 +29,10 @@ import org.grails.datastore.mapping.mongo.config.MongoSettings import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundException import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared +@RestoreSystemProperties class MongoStaticApiMultiTenancySpec extends AutoStartedMongoSpec { @Shared @AutoCleanup MongoDatastore datastore @@ -49,14 +51,6 @@ class MongoStaticApiMultiTenancySpec extends AutoStartedMongoSpec { this.datastore = new MongoDatastore(config, getDomainClasses() as Class[]) } - void setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "test search"() { setup: "drop existing database" diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/database/DatabasePerTenantSpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/database/DatabasePerTenantSpec.groovy index 1ce33f70ae..8c239fea93 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/database/DatabasePerTenantSpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/database/DatabasePerTenantSpec.groovy @@ -29,13 +29,14 @@ import org.grails.datastore.mapping.simple.SimpleMapDatastore import spock.lang.AutoCleanup import spock.lang.Ignore import spock.lang.IgnoreIf +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification /** * Created by graemerocher on 05/04/2017. */ - +@RestoreSystemProperties class DatabasePerTenantSpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -47,11 +48,6 @@ class DatabasePerTenantSpec extends Specification { ) @Shared IBookService bookDataService = datastore.getService(IBookService) - def setup() { - // Ensure other specs don't leak a tenant id and skip the expected TenantNotFoundException. - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void 'Test database per tenant'() { when:"When there is no tenant" Book.count() diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/MultiTenantServiceTransformSpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/MultiTenantServiceTransformSpec.groovy index f4e4b6b361..d9214e1874 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/MultiTenantServiceTransformSpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/MultiTenantServiceTransformSpec.groovy @@ -23,9 +23,11 @@ import org.grails.datastore.mapping.multitenancy.MultiTenancySettings import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import org.grails.datastore.mapping.simple.SimpleMapDatastore import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification +@RestoreSystemProperties class MultiTenantServiceTransformSpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -42,14 +44,6 @@ class MultiTenantServiceTransformSpec extends Specification { gcl = new GroovyClassLoader() } - def setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "test service transform applied with @WithoutTenant"() { when: "The service transform is applied to an interface it can't implement" Class service = gcl.parseClass(''' diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/PartitionMultiTenancySpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/PartitionMultiTenancySpec.groovy index 73a7578072..8943ded93a 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/PartitionMultiTenancySpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/partitioned/PartitionMultiTenancySpec.groovy @@ -31,9 +31,11 @@ import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundExcept import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import org.grails.datastore.mapping.simple.SimpleMapDatastore import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification +@RestoreSystemProperties class PartitionMultiTenancySpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -44,14 +46,6 @@ class PartitionMultiTenancySpec extends Specification { ) @Shared IBookService bookDataService = datastore.getService(IBookService) - def setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void 'Test partitioned multi-tenancy with GORM services'() { setup: BookService bookService = new BookService() diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/schema/SchemaPerTenantSpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/schema/SchemaPerTenantSpec.groovy index cb8302e08e..a59ec8ca1b 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/schema/SchemaPerTenantSpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/services/multitenancy/schema/SchemaPerTenantSpec.groovy @@ -30,9 +30,11 @@ import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundExcept import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import org.grails.datastore.mapping.simple.SimpleMapDatastore import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification +@RestoreSystemProperties class SchemaPerTenantSpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -43,14 +45,6 @@ class SchemaPerTenantSpec extends Specification { ) @Shared IBookService bookDataService = datastore.getService(IBookService) - def setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void 'Test schema per tenant'() { when:"When there is no tenant" Book.count() diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/CurrentTenantTransformSpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/CurrentTenantTransformSpec.groovy index df28c81f2b..d68e3cfdad 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/CurrentTenantTransformSpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/CurrentTenantTransformSpec.groovy @@ -33,12 +33,14 @@ import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantR import org.grails.datastore.mapping.simple.SimpleMapDatastore import org.springframework.transaction.TransactionStatus import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification /** * Created by graemerocher on 16/01/2017. */ +@RestoreSystemProperties class CurrentTenantTransformSpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -51,14 +53,6 @@ class CurrentTenantTransformSpec extends Specification { Player ) - void setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - void cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - void "Test parsing of @WithoutTenant"() { Class testServiceClass = new GroovyShell().evaluate(''' import grails.gorm.multitenancy.WithoutTenant diff --git a/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/TenantServiceSpec.groovy b/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/TenantServiceSpec.groovy index 77e1b40ddc..53a20219d6 100644 --- a/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/TenantServiceSpec.groovy +++ b/grails-datamapping-core-test/src/test/groovy/grails/gorm/tests/TenantServiceSpec.groovy @@ -29,12 +29,14 @@ import org.grails.datastore.mapping.multitenancy.exceptions.TenantNotFoundExcept import org.grails.datastore.mapping.multitenancy.resolvers.SystemPropertyTenantResolver import org.grails.datastore.mapping.simple.SimpleMapDatastore import spock.lang.AutoCleanup +import spock.util.environment.RestoreSystemProperties import spock.lang.Shared import spock.lang.Specification /** * Created by graemerocher on 11/01/2017. */ +@RestoreSystemProperties class TenantServiceSpec extends Specification { @Shared @AutoCleanup SimpleMapDatastore datastore = new SimpleMapDatastore( @@ -45,13 +47,6 @@ class TenantServiceSpec extends Specification { [ConnectionSource.DEFAULT, 'two'], Team ) - def setup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } - - def cleanup() { - System.setProperty(SystemPropertyTenantResolver.PROPERTY_NAME, "") - } void "test multi tenancy with in-memory datastore"() { when: diff --git a/grails-interceptors/src/test/groovy/org/grails/plugins/web/interceptors/UrlMappingMatcherSpec.groovy b/grails-interceptors/src/test/groovy/org/grails/plugins/web/interceptors/UrlMappingMatcherSpec.groovy index 4e6bf65a94..de677844a2 100644 --- a/grails-interceptors/src/test/groovy/org/grails/plugins/web/interceptors/UrlMappingMatcherSpec.groovy +++ b/grails-interceptors/src/test/groovy/org/grails/plugins/web/interceptors/UrlMappingMatcherSpec.groovy @@ -22,13 +22,11 @@ import grails.artefact.Interceptor import grails.util.Environment import grails.web.mapping.UrlMappingInfo import spock.lang.Issue +import spock.util.environment.RestoreSystemProperties import spock.lang.Specification class UrlMappingMatcherSpec extends Specification { - // Store original environment to restore in cleanup for parallel test isolation - private String originalEnvironment - @Issue('https://github.com/apache/grails-core/issues/9179') void 'test a matcher with a uri does not match all requests'() { given: @@ -42,10 +40,10 @@ class UrlMappingMatcherSpec extends Specification { !matcher.doesMatch('/demo/index', mappingInfo) } + @RestoreSystemProperties @Issue("https://github.com/apache/grails-core/issues/9208") void "test caching of results in production"() { given: - originalEnvironment = System.getProperty(Environment.KEY) System.setProperty(Environment.KEY, "prod") String controller = "foo" String url = "/foo/test" @@ -56,24 +54,14 @@ class UrlMappingMatcherSpec extends Specification { def matcher = new UrlMappingMatcher(Mock(Interceptor)) matcher.matches(controller: controller) - then: matcher.doesMatch(url, info) - when: matcher = new UrlMappingMatcher(Mock(Interceptor)) matcher.matches(controller: 'bar') then: !matcher.doesMatch(url, info) - - cleanup: - // Restore original environment value for parallel test isolation - if (originalEnvironment != null) { - System.setProperty(Environment.KEY, originalEnvironment) - } else { - System.clearProperty(Environment.KEY) - } } }
