From ec17e172c158a41d932bfb52550d43196dbca762 Mon Sep 17 00:00:00 2001 From: Onsi Fakhouri Date: Thu, 27 Jan 2022 12:05:44 -0700 Subject: [PATCH] Suites that only import the new dsl packages are correctly identified as Ginkgo suites resolves #891 --- ginkgo/internal/test_suite.go | 2 +- ginkgo/internal/testsuite_test.go | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ginkgo/internal/test_suite.go b/ginkgo/internal/test_suite.go index d446ce3ef..64dcb1b78 100644 --- a/ginkgo/internal/test_suite.go +++ b/ginkgo/internal/test_suite.go @@ -268,7 +268,7 @@ func packageNameForSuite(dir string) string { func filesHaveGinkgoSuite(dir string, files []os.DirEntry) bool { reTestFile := regexp.MustCompile(`_test\.go$`) - reGinkgo := regexp.MustCompile(`package ginkgo|\/ginkgo"|\/ginkgo\/v2"`) + reGinkgo := regexp.MustCompile(`package ginkgo|\/ginkgo"|\/ginkgo\/v2"|\/ginkgo\/v2/dsl/`) for _, file := range files { if !file.IsDir() && reTestFile.Match([]byte(file.Name())) { diff --git a/ginkgo/internal/testsuite_test.go b/ginkgo/internal/testsuite_test.go index 30d610dfc..f84f685ea 100644 --- a/ginkgo/internal/testsuite_test.go +++ b/ginkgo/internal/testsuite_test.go @@ -76,6 +76,9 @@ var _ = Describe("TestSuite", func() { //ginkgo tests in a deeply nested directory writeFile("/colonelmustard/library", "library_test.go", `import "github.com/onsi/ginkgo/v2"`, 0666) + //ginkgo tests in a deeply nested directory + writeFile("/colonelmustard/library/spanner", "spanner_test.go", `import "github.com/onsi/ginkgo/v2/dsl/core"`, 0666) + //ginkgo tests deeply nested in a vendored dependency writeFile("/vendor/mrspeacock/lounge", "lounge_test.go", `import "github.com/onsi/ginkgo/v2"`, 0666) @@ -104,6 +107,7 @@ var _ = Describe("TestSuite", func() { TS("./professorplum", "professorplum", false, TestSuiteStateUncompiled), TS("./colonelmustard", "colonelmustard", true, TestSuiteStateUncompiled), TS("./colonelmustard/library", "library", true, TestSuiteStateUncompiled), + TS("./colonelmustard/library/spanner", "spanner", true, TestSuiteStateUncompiled), )) }) }) @@ -120,6 +124,7 @@ var _ = Describe("TestSuite", func() { TS("./professorplum", "professorplum", false, TestSuiteStateSkippedByFilter), TS("./colonelmustard", "colonelmustard", true, TestSuiteStateUncompiled), TS("./colonelmustard/library", "library", true, TestSuiteStateSkippedByFilter), + TS("./colonelmustard/library/spanner", "spanner", true, TestSuiteStateSkippedByFilter), )) }) }) @@ -160,6 +165,7 @@ var _ = Describe("TestSuite", func() { Ω(suites).Should(ConsistOf( TS("./colonelmustard", "colonelmustard", true, TestSuiteStateUncompiled), TS("./colonelmustard/library", "library", true, TestSuiteStateUncompiled), + TS("./colonelmustard/library/spanner", "spanner", true, TestSuiteStateUncompiled), )) }) }) @@ -176,6 +182,7 @@ var _ = Describe("TestSuite", func() { TS("./professorplum", "professorplum", false, TestSuiteStateUncompiled), TS("./colonelmustard", "colonelmustard", true, TestSuiteStateUncompiled), TS("./colonelmustard/library", "library", true, TestSuiteStateSkippedByFilter), + TS("./colonelmustard/library/spanner", "spanner", true, TestSuiteStateSkippedByFilter), )) }) }) @@ -205,6 +212,7 @@ var _ = Describe("TestSuite", func() { TS("./professorplum", "professorplum", false, TestSuiteStateUncompiled), TS("./colonelmustard", "colonelmustard", true, TestSuiteStateUncompiled), TS("./colonelmustard/library", "library", true, TestSuiteStateUncompiled), + TS("./colonelmustard/library/spanner", "spanner", true, TestSuiteStateUncompiled), )) }) })