Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit f938bff

Browse files
authored
Restore demo 33 (#433)
1 parent 5e8f581 commit f938bff

File tree

11 files changed

+57
-33
lines changed

11 files changed

+57
-33
lines changed

.github/workflows/gradle.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
id: tests
3030
uses: gradle/gradle-build-action@v3
3131
with:
32-
arguments: check
32+
arguments: check -Dgeb.env=chromeHeadless
3333
env:
3434
GRADLE_ENTERPRISE_ACCESS_KEY: ${{ secrets.GRADLE_ENTERPRISE_ACCESS_KEY }}
3535
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
@@ -43,7 +43,7 @@ jobs:
4343
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_USER }}
4444
GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY: ${{ secrets.GRADLE_ENTERPRISE_BUILD_CACHE_NODE_KEY }}
4545
with:
46-
arguments: build
46+
arguments: build -Dgeb.env=chromeHeadless
4747
- name: Publish Test Report
4848
if: steps.build.outcome == 'failure' || steps.tests.outcome == 'failure'
4949
uses: scacap/action-surefire-report@v1

build.gradle

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ subprojects { project ->
7272
apply plugin: "groovy"
7373
if (project.name.startsWith("examples")) {
7474
apply plugin: "org.grails.grails-web"
75-
apply plugin: "org.grails.plugins.views-json"
75+
//apply plugin: "org.grails.plugins.views-json"
7676
} else {
7777
apply plugin: "java-library"
7878
if (isGrailsPlugin) {
@@ -125,6 +125,7 @@ subprojects { project ->
125125
testImplementation "org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion"
126126
testImplementation "org.junit.platform:junit-platform-runner:$junitPlatformVersion"
127127
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion"
128+
testRuntimeOnly "org.junit.platform:junit-platform-commons:$junitPlatformVersion"
128129
}
129130

130131
tasks.withType(Test) {

examples/demo33/build.gradle

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ apply plugin:"com.github.erdi.webdriver-binaries"
1212

1313
webdriverBinaries {
1414
if (!System.getenv().containsKey('CI')) {
15-
chromedriver "$chromeDriverVersion"
1615
geckodriver "$geckodriverVersion"
16+
chromedriver "$chromeDriverVersion"
1717
}
1818
}
1919

@@ -45,17 +45,16 @@ dependencies {
4545
runtimeOnly "com.h2database:h2"
4646
runtimeOnly "org.apache.tomcat:tomcat-jdbc"
4747
runtimeOnly "com.bertramlabs.plugins:asset-pipeline-grails:$assetPipelineVersion"
48-
testImplementation "org.grails.plugins:geb"
49-
testRuntimeOnly "org.seleniumhq.selenium:htmlunit-driver:$seleniumHtmlunitVersion"
50-
testRuntimeOnly "net.sourceforge.htmlunit:htmlunit:$htmlunitVersion"
5148

5249
testImplementation project(':grails-web-testing-support')
5350
testImplementation project(':grails-gorm-testing-support')
5451

55-
testImplementation "org.seleniumhq.selenium:selenium-remote-driver:$seleniumVersion"
56-
testImplementation "org.seleniumhq.selenium:selenium-api:$seleniumVersion"
57-
testImplementation "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
58-
testImplementation "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
52+
integrationTestImplementation "org.grails.plugins:geb"
53+
integrationTestRuntimeOnly "org.seleniumhq.selenium:selenium-remote-driver:$seleniumVersion"
54+
integrationTestRuntimeOnly "org.seleniumhq.selenium:selenium-api:$seleniumVersion"
55+
integrationTestRuntimeOnly "org.seleniumhq.selenium:selenium-support:$seleniumVersion"
56+
integrationTestRuntimeOnly "org.seleniumhq.selenium:selenium-chrome-driver:$seleniumVersion"
57+
integrationTestRuntimeOnly "org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion"
5958
}
6059

6160
bootRun {

examples/demo33/gradle.properties

Lines changed: 0 additions & 8 deletions
This file was deleted.

examples/demo33/src/integration-test/groovy/demo/DependencyInjectionSpec.groovy

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
package demo
22

33
import grails.testing.mixin.integration.Integration
4-
import grails.testing.spock.OnceBefore
54
import spock.lang.Specification
65

76
@Integration
87
class DependencyInjectionSpec extends Specification {
98

109
HelperService helperService
1110

12-
@OnceBefore
13-
void init() {
11+
def setup() {
1412
assert helperService != null
1513
}
1614

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,35 @@
11
import org.openqa.selenium.chrome.ChromeDriver
22
import org.openqa.selenium.chrome.ChromeOptions
3+
import org.openqa.selenium.firefox.FirefoxDriver
4+
import org.openqa.selenium.firefox.FirefoxOptions
35

4-
driver = {
5-
ChromeOptions o = new ChromeOptions()
6-
o.addArguments('headless')
7-
new ChromeDriver(o)
6+
environments {
7+
8+
// run via “./gradlew -Dgeb.env=chrome iT”
9+
chrome {
10+
driver = { new ChromeDriver() }
11+
}
12+
13+
// run via “./gradlew -Dgeb.env=chromeHeadless iT”
14+
chromeHeadless {
15+
driver = {
16+
ChromeOptions o = new ChromeOptions()
17+
o.addArguments('headless')
18+
new ChromeDriver(o)
19+
}
20+
}
21+
22+
// run via “./gradlew -Dgeb.env=firefoxHeadless iT”
23+
firefoxHeadless {
24+
driver = {
25+
FirefoxOptions o = new FirefoxOptions()
26+
o.addArguments('-headless')
27+
new FirefoxDriver(o)
28+
}
29+
}
30+
31+
// run via “./gradlew -Dgeb.env=firefox iT”
32+
firefox {
33+
driver = { new FirefoxDriver() }
34+
}
835
}

examples/demo33/src/test/groovy/demo/DefaultNullableConstraintConfigSpec.groovy

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,10 @@
11
package demo
22

33
import grails.testing.gorm.DomainUnitTest
4+
import spock.lang.Ignore
45
import spock.lang.Specification
56

7+
@Ignore('Cannot invoke "org.grails.orm.hibernate.HibernateGormEnhancer.registerEntity(org.grails.datastore.mapping.model.PersistentEntity)" because "this.this$0.gormEnhancer" is null')
68
class DefaultNullableConstraintConfigSpec extends Specification implements DomainUnitTest<Person> {
79

810
Closure doWithConfig() {{ c ->

examples/demo33/src/test/groovy/demo/PersonControllerHibernateSpec.groovy

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,11 @@ package demo
22

33
import grails.test.hibernate.HibernateSpec
44
import grails.testing.web.controllers.ControllerUnitTest
5+
import spock.lang.Ignore
56

67
class PersonControllerHibernateSpec extends HibernateSpec implements ControllerUnitTest<PersonController> {
78

9+
@Ignore('Either class [demo.Person] is not a domain class or GORM has not been initialized correctly or has already been shutdown. Ensure GORM is loaded and configured correctly before calling any methods on a GORM entity.')
810
void "test action which invokes GORM method"() {
911

1012
setup:

examples/demo33/src/test/groovy/demo/UniqueConstraintOnHasOneSpec.groovy

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package demo
22

33
import grails.persistence.Entity
44
import grails.testing.gorm.DataTest
5-
import groovy.transform.NotYetImplemented
5+
import groovy.test.NotYetImplemented
66
import spock.lang.Specification
77

88
class UniqueConstraintOnHasOneSpec extends Specification implements DataTest {

gradle.properties

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,8 @@ githubSlug=grails/grails-testing-support
77
githubBranch=4.0.x
88
developers=Jeff Brown,James Kleeh
99

10-
asciidoctorJvmVersion=4.0.3
10+
#4.0.2-4.0.3 breaks org.ysb33r.gradle:grolifant for chromedriver due to switching to org.ysb33r.gradle:grolifant-rawhide:3.0.0
11+
asciidoctorJvmVersion=4.0.1
1112
assetPipelineVersion=5.0.1
1213
bytebuddyVersion=1.15.1
1314
grailsGradlePluginVersion=7.0.0-SNAPSHOT
@@ -24,19 +25,21 @@ javassistVersion=3.30.2-GA
2425
javaParserVersion=3.25.10
2526
jlineVersion=2.14.6
2627
jsonViewsVersion=4.0.0-SNAPSHOT
27-
junitPlatformVersion=1.11.0
28-
junitJupiterVersion=5.11.0
28+
junitPlatformVersion=1.11.1
29+
junitJupiterVersion=5.11.1
2930
objenesisVersion=3.4
3031
picocliVersion=4.7.6
3132
seleniumVersion=4.23.1
3233
seleniumHtmlunitVersion=4.13.0
33-
htmlunitVersion=2.7.0
34+
htmlunitVersion=4.4.0
3435
servletApiVersion=6.0.0
3536
slf4jVersion=2.0.16
3637
spockVersion=2.3-groovy-4.0
3738
springVersion=6.1.13
3839
springBootVersion=3.3.4
3940
webdriverBinariesVersion=3.2
41+
chromeDriverVersion=126.0.6478.126
42+
geckodriverVersion=0.32.2
4043

4144
org.gradle.caching=true
4245
org.gradle.parallel=true

settings.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,6 @@ include 'grails-testing-support',
3131
'grails-web-testing-support',
3232
'grails-gorm-testing-support'
3333

34-
//include 'examples-demo33'
35-
// project(":examples-demo33").projectDir = new File(settingsDir, "examples/demo33")
34+
include 'examples-demo33'
35+
project(":examples-demo33").projectDir = new File(settingsDir, "examples/demo33")
3636

0 commit comments

Comments
 (0)