@@ -304,20 +304,31 @@ def test_dotenv_values_file(dotenv_file):
304304 ({"b" : "c" }, "a=$b" , True , {"a" : "$b" }),
305305 ({"b" : "c" }, "a=${b}" , False , {"a" : "${b}" }),
306306 ({"b" : "c" }, "a=${b}" , True , {"a" : "c" }),
307+ ({"b" : "c" }, "a=${b:-d}" , False , {"a" : "${b:-d}" }),
308+ ({"b" : "c" }, "a=${b:-d}" , True , {"a" : "c" }),
307309
308310 # Defined in file
309311 ({}, "b=c\n a=${b}" , True , {"a" : "c" , "b" : "c" }),
310312
311313 # Undefined
312314 ({}, "a=${b}" , True , {"a" : "" }),
315+ ({}, "a=${b:-d}" , True , {"a" : "d" }),
313316
314317 # With quotes
315318 ({"b" : "c" }, 'a="${b}"' , True , {"a" : "c" }),
316319 ({"b" : "c" }, "a='${b}'" , True , {"a" : "c" }),
317320
321+ # With surrounding text
322+ ({"b" : "c" }, "a=x${b}y" , True , {"a" : "xcy" }),
323+
318324 # Self-referential
319325 ({"a" : "b" }, "a=${a}" , True , {"a" : "b" }),
320326 ({}, "a=${a}" , True , {"a" : "" }),
327+ ({"a" : "b" }, "a=${a:-c}" , True , {"a" : "b" }),
328+ ({}, "a=${a:-c}" , True , {"a" : "c" }),
329+
330+ # Reused
331+ ({"b" : "c" }, "a=${b}${b}" , True , {"a" : "cc" }),
321332 ],
322333)
323334def test_dotenv_values_stream (env , string , interpolate , expected ):
0 commit comments