@@ -139,7 +139,8 @@ void registrationOrder(LogRecordListener listener) {
139
139
assertOneTestSucceeded (AllInOneWithTestInstancePerMethodTestCase .class );
140
140
assertThat (getRegisteredLocalExtensions (listener ))//
141
141
.containsExactly (//
142
- "StaticField" , // @ExtendWith on static field
142
+ "StaticField1" , // @ExtendWith on static field
143
+ "StaticField2" , // @ExtendWith on static field
143
144
"ClassLevelExtension1" , // @RegisterExtension on static field
144
145
"ClassLevelExtension2" , // @RegisterExtension on static field
145
146
"ConstructorParameter" , // @ExtendWith on parameter in constructor
@@ -148,7 +149,8 @@ void registrationOrder(LogRecordListener listener) {
148
149
"AfterEachParameter" , // @ExtendWith on parameter in @AfterEach method
149
150
"AfterAllParameter" , // @ExtendWith on parameter in static @AfterAll method
150
151
"TestParameter" , // @ExtendWith on parameter in @Test method
151
- "InstanceField" , // @ExtendWith on instance field
152
+ "InstanceField1" , // @ExtendWith on instance field
153
+ "InstanceField2" , // @ExtendWith on instance field
152
154
"InstanceLevelExtension1" , // @RegisterExtension on instance field
153
155
"InstanceLevelExtension2" // @RegisterExtension on instance field
154
156
);
@@ -157,15 +159,17 @@ void registrationOrder(LogRecordListener listener) {
157
159
assertOneTestSucceeded (AllInOneWithTestInstancePerClassTestCase .class );
158
160
assertThat (getRegisteredLocalExtensions (listener ))//
159
161
.containsExactly (//
160
- "StaticField" , // @ExtendWith on static field
162
+ "StaticField1" , // @ExtendWith on static field
163
+ "StaticField2" , // @ExtendWith on static field
161
164
"ClassLevelExtension1" , // @RegisterExtension on static field
162
165
"ClassLevelExtension2" , // @RegisterExtension on static field
163
166
"ConstructorParameter" , // @ExtendWith on parameter in constructor
164
167
"BeforeAllParameter" , // @ExtendWith on parameter in static @BeforeAll method
165
168
"BeforeEachParameter" , // @ExtendWith on parameter in @BeforeEach method
166
169
"AfterEachParameter" , // @ExtendWith on parameter in @AfterEach method
167
170
"AfterAllParameter" , // @ExtendWith on parameter in static @AfterAll method
168
- "InstanceField" , // @ExtendWith on instance field
171
+ "InstanceField1" , // @ExtendWith on instance field
172
+ "InstanceField2" , // @ExtendWith on instance field
169
173
"InstanceLevelExtension1" , // @RegisterExtension on instance field
170
174
"InstanceLevelExtension2" , // @RegisterExtension on instance field
171
175
"TestParameter" // @ExtendWith on parameter in @Test method
@@ -598,11 +602,19 @@ void test() {
598
602
@ TestInstance (Lifecycle .PER_METHOD )
599
603
static class AllInOneWithTestInstancePerMethodTestCase {
600
604
601
- @ StaticField
602
- static String staticField ;
605
+ @ StaticField1
606
+ static String staticField1 ;
603
607
604
- @ InstanceField
605
- String instanceField ;
608
+ @ StaticField2
609
+ @ ExtendWith (StaticField2 .Extension .class )
610
+ static String staticField2 ;
611
+
612
+ @ InstanceField1
613
+ String instanceField1 ;
614
+
615
+ @ InstanceField2
616
+ @ ExtendWith (InstanceField2 .Extension .class )
617
+ String instanceField2 ;
606
618
607
619
@ RegisterExtension
608
620
@ Order (1 )
@@ -625,36 +637,44 @@ static class AllInOneWithTestInstancePerMethodTestCase {
625
637
}
626
638
627
639
@ BeforeAll
628
- static void beforeAll (@ BeforeAllParameter String text ) {
640
+ static void beforeAll (@ ExtendWith ( BeforeAllParameter . Extension . class ) @ BeforeAllParameter String text ) {
629
641
assertThat (text ).isEqualTo ("enigma" );
630
- assertThat (staticField ).isEqualTo ("beforeAll - staticField" );
642
+ assertThat (staticField1 ).isEqualTo ("beforeAll - staticField1" );
643
+ assertThat (staticField2 ).isEqualTo ("beforeAll - staticField2" );
631
644
}
632
645
633
646
@ BeforeEach
634
647
void beforeEach (@ BeforeEachParameter String text ) {
635
648
assertThat (text ).isEqualTo ("enigma" );
636
- assertThat (staticField ).isEqualTo ("beforeAll - staticField" );
637
- assertThat (instanceField ).isEqualTo ("beforeEach - instanceField" );
649
+ assertThat (staticField1 ).isEqualTo ("beforeAll - staticField1" );
650
+ assertThat (staticField2 ).isEqualTo ("beforeAll - staticField2" );
651
+ assertThat (instanceField1 ).isEqualTo ("beforeEach - instanceField1" );
652
+ assertThat (instanceField2 ).isEqualTo ("beforeEach - instanceField2" );
638
653
}
639
654
640
655
@ Test
641
656
void test (@ TestParameter String text ) {
642
657
assertThat (text ).isEqualTo ("enigma" );
643
- assertThat (staticField ).isEqualTo ("beforeAll - staticField" );
644
- assertThat (instanceField ).isEqualTo ("beforeEach - instanceField" );
658
+ assertThat (staticField1 ).isEqualTo ("beforeAll - staticField1" );
659
+ assertThat (staticField2 ).isEqualTo ("beforeAll - staticField2" );
660
+ assertThat (instanceField1 ).isEqualTo ("beforeEach - instanceField1" );
661
+ assertThat (instanceField2 ).isEqualTo ("beforeEach - instanceField2" );
645
662
}
646
663
647
664
@ AfterEach
648
665
void afterEach (@ AfterEachParameter String text ) {
649
666
assertThat (text ).isEqualTo ("enigma" );
650
- assertThat (staticField ).isEqualTo ("beforeAll - staticField" );
651
- assertThat (instanceField ).isEqualTo ("beforeEach - instanceField" );
667
+ assertThat (staticField1 ).isEqualTo ("beforeAll - staticField1" );
668
+ assertThat (staticField2 ).isEqualTo ("beforeAll - staticField2" );
669
+ assertThat (instanceField1 ).isEqualTo ("beforeEach - instanceField1" );
670
+ assertThat (instanceField2 ).isEqualTo ("beforeEach - instanceField2" );
652
671
}
653
672
654
673
@ AfterAll
655
674
static void afterAll (@ AfterAllParameter String text ) {
656
675
assertThat (text ).isEqualTo ("enigma" );
657
- assertThat (staticField ).isEqualTo ("beforeAll - staticField" );
676
+ assertThat (staticField1 ).isEqualTo ("beforeAll - staticField1" );
677
+ assertThat (staticField2 ).isEqualTo ("beforeAll - staticField2" );
658
678
}
659
679
660
680
}
@@ -730,7 +750,8 @@ class Extension extends BaseParameterExtension<ConstructorParameter> {
730
750
731
751
@ Target (ElementType .PARAMETER )
732
752
@ Retention (RetentionPolicy .RUNTIME )
733
- @ ExtendWith (BeforeAllParameter .Extension .class )
753
+ // Intentionally NOT annotated as follows
754
+ // @ExtendWith(BeforeAllParameter.Extension.class)
734
755
@interface BeforeAllParameter {
735
756
class Extension extends BaseParameterExtension <BeforeAllParameter > {
736
757
}
@@ -811,17 +832,35 @@ class Extension extends BaseFieldExtension<MagicField> {
811
832
812
833
@ Target (ElementType .FIELD )
813
834
@ Retention (RetentionPolicy .RUNTIME )
814
- @ ExtendWith (InstanceField .Extension .class )
815
- @interface InstanceField {
816
- class Extension extends BaseFieldExtension <InstanceField > {
835
+ @ ExtendWith (InstanceField1 .Extension .class )
836
+ @interface InstanceField1 {
837
+ class Extension extends BaseFieldExtension <InstanceField1 > {
838
+ }
839
+ }
840
+
841
+ @ Target (ElementType .FIELD )
842
+ @ Retention (RetentionPolicy .RUNTIME )
843
+ // Intentionally NOT annotated as follows
844
+ // @ExtendWith(InstanceField2.Extension.class)
845
+ @interface InstanceField2 {
846
+ class Extension extends BaseFieldExtension <InstanceField2 > {
847
+ }
848
+ }
849
+
850
+ @ Target (ElementType .FIELD )
851
+ @ Retention (RetentionPolicy .RUNTIME )
852
+ @ ExtendWith (StaticField1 .Extension .class )
853
+ @interface StaticField1 {
854
+ class Extension extends BaseFieldExtension <StaticField1 > {
817
855
}
818
856
}
819
857
820
858
@ Target (ElementType .FIELD )
821
859
@ Retention (RetentionPolicy .RUNTIME )
822
- @ ExtendWith (StaticField .Extension .class )
823
- @interface StaticField {
824
- class Extension extends BaseFieldExtension <StaticField > {
860
+ // Intentionally NOT annotated as follows
861
+ // @ExtendWith(StaticField2.Extension.class)
862
+ @interface StaticField2 {
863
+ class Extension extends BaseFieldExtension <StaticField2 > {
825
864
}
826
865
}
827
866
0 commit comments