Skip to content

Commit 1bbac8c

Browse files
CopilothuayanYu
andauthored
Extract shared test fixtures into non-published module (#755)
* Initial plan * Create dynamic-datasource-test-fixtures module for shared test code - Add new module `dynamic-datasource-test-fixtures` with shared service classes (UserService, StudentService, TeacherService, SchoolService, OrderService, AccountService, ProductService) and model classes - Move SQL scripts (add-remove-datasource.sql, ds-with-transactional.sql, spring-expression-language.sql) to the shared module - Configure the new module to NOT be published (disable all publishing tasks) - Update all starter modules to depend on test-fixtures and use shared fixtures - Keep UserController in each starter due to javax.servlet vs jakarta.servlet API differences - Remove duplicate test fixture code from each starter module Co-authored-by: huayanYu <16700837+huayanYu@users.noreply.github.com> * Refactor: rename module from test-fixtures to test-common and remove fixture references - Renamed module from dynamic-datasource-test-fixtures to dynamic-datasource-test-common - Changed package from com.baomidou.dynamic.datasource.fixture to com.baomidou.dynamic.datasource.common - Updated all imports and scanBasePackages in test classes - Updated build.gradle comments to remove fixture terminology Co-authored-by: huayanYu <16700837+huayanYu@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: huayanYu <16700837+huayanYu@users.noreply.github.com>
1 parent 8bdd8f1 commit 1bbac8c

79 files changed

Lines changed: 118 additions & 1774 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

dynamic-datasource-spring-boot-starter/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ dependencies {
2222
compileOnly("org.springframework.boot:spring-boot-configuration-processor")
2323
annotationProcessor("org.springframework.boot:spring-boot-configuration-processor")
2424

25+
testImplementation(project(":dynamic-datasource-test-common"))
2526
testImplementation("com.h2database:h2:${h2Version}")
2627
testImplementation("org.springframework.boot:spring-boot-starter-test")
2728
testImplementation("org.springframework.boot:spring-boot-starter-web")

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/controller/UserController.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/controller/UserController.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v1.controller;
16+
package com.baomidou.dynamic.datasource.common.controller;
1717

18-
import com.baomidou.dynamic.datasource.fixture.v1.service.spel.User;
19-
import com.baomidou.dynamic.datasource.fixture.v1.service.spel.UserService;
18+
import com.baomidou.dynamic.datasource.common.service.spel.User;
19+
import com.baomidou.dynamic.datasource.common.service.spel.UserService;
2020
import org.springframework.beans.factory.annotation.Autowired;
2121
import org.springframework.web.bind.annotation.GetMapping;
2222
import org.springframework.web.bind.annotation.RequestMapping;

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/AddRemoveDatasourceTest.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/v1/AddRemoveDatasourceTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v1;
16+
package com.baomidou.dynamic.datasource.common.v1;
1717

1818
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
1919
import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
@@ -67,7 +67,7 @@ void testAddAndRemoveDataSource() {
6767
}
6868
}
6969

70-
@SpringBootApplication
70+
@SpringBootApplication(scanBasePackages = "com.baomidou.dynamic.datasource.common")
7171
class AddRemoveDatasourceApplication {
7272
public static void main(String[] args) {
7373
SpringApplication.run(AddRemoveDatasourceApplication.class, args);

dynamic-datasource-spring-boot3-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v3/DsTransactionalTest.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/v1/DsTransactionalTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v3;
16+
package com.baomidou.dynamic.datasource.common.v1;
1717

1818
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
1919
import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
2020
import com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator;
21-
import com.baomidou.dynamic.datasource.fixture.v3.service.tx.*;
21+
import com.baomidou.dynamic.datasource.common.service.tx.*;
2222
import org.junit.jupiter.api.Test;
2323
import org.springframework.beans.factory.annotation.Autowired;
2424
import org.springframework.boot.SpringApplication;
@@ -95,7 +95,7 @@ private DataSourceProperty createDataSourceProperty(String poolName) {
9595
}
9696
}
9797

98-
@SpringBootApplication
98+
@SpringBootApplication(scanBasePackages = "com.baomidou.dynamic.datasource.common")
9999
class DsTransactionalApplication {
100100
public static void main(String[] args) {
101101
SpringApplication.run(DsTransactionalApplication.class, args);

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/LoadDatasourceFromJDBCTest.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/v1/LoadDatasourceFromJDBCTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v1;
16+
package com.baomidou.dynamic.datasource.common.v1;
1717

1818
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
1919
import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
@@ -52,7 +52,7 @@ void testExistDataSource() {
5252
}
5353

5454
@SuppressWarnings({"SqlDialectInspection", "SqlNoDataSourceInspection"})
55-
@SpringBootApplication
55+
@SpringBootApplication(scanBasePackages = "com.baomidou.dynamic.datasource.common")
5656
class LoadDatasourceFromJDBCApplication {
5757

5858
public static void main(String[] args) {

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/NestDataSourceTest.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/v1/NestDataSourceTest.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,15 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v1;
16+
package com.baomidou.dynamic.datasource.common.v1;
1717

1818
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
1919
import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
2020
import com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator;
21-
import com.baomidou.dynamic.datasource.fixture.v1.service.nest.SchoolService;
22-
import com.baomidou.dynamic.datasource.fixture.v1.service.nest.Student;
23-
import com.baomidou.dynamic.datasource.fixture.v1.service.nest.StudentService;
24-
import com.baomidou.dynamic.datasource.fixture.v1.service.nest.TeacherService;
21+
import com.baomidou.dynamic.datasource.common.service.nest.SchoolService;
22+
import com.baomidou.dynamic.datasource.common.service.nest.Student;
23+
import com.baomidou.dynamic.datasource.common.service.nest.StudentService;
24+
import com.baomidou.dynamic.datasource.common.service.nest.TeacherService;
2525
import org.junit.jupiter.api.Test;
2626
import org.springframework.beans.factory.annotation.Autowired;
2727
import org.springframework.boot.SpringApplication;
@@ -83,7 +83,7 @@ private DataSourceProperty createDataSourceProperty(String poolName) {
8383
}
8484
}
8585

86-
@SpringBootApplication
86+
@SpringBootApplication(scanBasePackages = "com.baomidou.dynamic.datasource.common")
8787
class NestApplication {
8888
public static void main(String[] args) {
8989
SpringApplication.run(NestApplication.class, args);

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/SPELTest.java renamed to dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/common/v1/SPELTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,13 @@
1313
* See the License for the specific language governing permissions and
1414
* limitations under the License.
1515
*/
16-
package com.baomidou.dynamic.datasource.fixture.v1;
16+
package com.baomidou.dynamic.datasource.common.v1;
1717

1818
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
1919
import com.baomidou.dynamic.datasource.creator.DataSourceProperty;
2020
import com.baomidou.dynamic.datasource.creator.DefaultDataSourceCreator;
21-
import com.baomidou.dynamic.datasource.fixture.v1.service.spel.User;
22-
import com.baomidou.dynamic.datasource.fixture.v1.service.spel.UserService;
21+
import com.baomidou.dynamic.datasource.common.service.spel.User;
22+
import com.baomidou.dynamic.datasource.common.service.spel.UserService;
2323
import org.junit.jupiter.api.BeforeEach;
2424
import org.junit.jupiter.api.Test;
2525
import org.springframework.beans.factory.annotation.Autowired;
@@ -104,7 +104,7 @@ private DataSourceProperty createDataSourceProperty(String poolName) {
104104
}
105105
}
106106

107-
@SpringBootApplication
107+
@SpringBootApplication(scanBasePackages = "com.baomidou.dynamic.datasource.common")
108108
class SPELApplication {
109109
public static void main(String[] args) {
110110
SpringApplication.run(SPELApplication.class, args);

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/service/nest/StudentService.java

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

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/service/nest/TeacherService.java

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

dynamic-datasource-spring-boot-starter/src/test/java/com/baomidou/dynamic/datasource/fixture/v1/service/tx/Account.java

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

0 commit comments

Comments
 (0)