@@ -185,6 +185,26 @@ def test_self_doc_detected(self, source):
185185 self .config .enable_feature ("fstring-self-doc" )
186186 self .assert_self_doc (source )
187187
188+ @VerminTest .skipUnlessVersion (3 , 8 )
189+ def test_self_doc_feature_flag (self ):
190+ # Enabled by default.
191+ visitor = self .visit ("a = 1\n f'{a=}'" )
192+ self .assertTrue (visitor .fstrings ())
193+ self .assertTrue (visitor .fstrings_self_doc ())
194+ self .assertOnlyIn ((3 , 8 ), visitor .minimum_versions ())
195+
196+ self .config .clear_features ()
197+ visitor = self .visit ("a = 1\n f'{a=}'" )
198+ self .assertTrue (visitor .fstrings ())
199+ self .assertFalse (visitor .fstrings_self_doc ())
200+ self .assertOnlyIn ((3 , 6 ), visitor .minimum_versions ())
201+
202+ self .config .enable_feature ("fstring-self-doc" )
203+ visitor = self .visit ("a = 1\n f'{a=}'" )
204+ self .assertTrue (visitor .fstrings ())
205+ self .assertTrue (visitor .fstrings_self_doc ())
206+ self .assertOnlyIn ((3 , 8 ), visitor .minimum_versions ())
207+
188208 def assert_pep701 (self , source ):
189209 visitor = self .visit (source )
190210 self .assertTrue (visitor .fstrings ())
@@ -282,9 +302,16 @@ def test_pep701_comment_variants(self, source):
282302
283303 @VerminTest .skipUnlessVersion (3 , 12 )
284304 def test_pep701_feature_flag (self ):
305+ # Enabled by default.
285306 self .config .reset ()
286307 visitor = self .visit ('f"outer {f"inner"}"' )
287308 self .assertTrue (visitor .fstrings ())
309+ self .assertTrue (visitor .fstrings_pep701 ())
310+ self .assertOnlyIn ((3 , 12 ), visitor .minimum_versions ())
311+
312+ self .config .clear_features ()
313+ visitor = self .visit ('f"outer {f"inner"}"' )
314+ self .assertTrue (visitor .fstrings ())
288315 self .assertFalse (visitor .fstrings_pep701 ())
289316 self .assertOnlyIn ((3 , 6 ), visitor .minimum_versions ())
290317
0 commit comments