Skip to content

Commit a2dad4c

Browse files
authored
Merge pull request #110 from motdotla/two-dollar-signs
demonstrate additional specs
2 parents 4cf6f0e + 6889895 commit a2dad4c

File tree

2 files changed

+37
-0
lines changed

2 files changed

+37
-0
lines changed

tests/.env.test

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,3 +53,15 @@ ONETWO=${ONE}${TWO}
5353
ONETWO_SIMPLE=${ONE}$TWO
5454
ONETWO_SIMPLE2=$ONE${TWO}
5555
ONETWO_SUPER_SIMPLE=$ONE$TWO
56+
57+
TWO_DOLLAR_SIGNS="abcd$$1234"
58+
59+
# https://github.com/motdotla/dotenv-expand/issues/80
60+
DONT_CHOKE1='.kZh`>4[,[DDU-*Jt+[;8-,@K=,9%;F9KsoXqOE)gpG^X!{)Q+/9Fc(QF}i[NEi!'
61+
DONT_CHOKE2='=;+=CNy3)-D=zI6gRP2w\$B@0K;Y]e^EFnCmx\$Dx?;.9wf-rgk1BcTR0]JtY<S:b_'
62+
DONT_CHOKE3='MUcKSGSY@HCON<1S_siWTP`DgS*Ug],mu]SkqI|7V2eOk9:>&fw;>HEwms`D8E2H'
63+
DONT_CHOKE4='m]zjzfRItw2gs[2:{p{ugENyFw9m)tH6_VCQzer`*noVaI<vqa3?FZ9+6U;K#Bfd'
64+
DONT_CHOKE5='#la__nK?IxNlQ%`5q&DpcZ>Munx=[1-AMgAcwmPkToxTaB?kgdF5y`A8m=Oa-B!)'
65+
DONT_CHOKE6='xlC&*<j4J<d._<JKH0RBJV!4(ZQEN-+&!0p137<g*hdY2H4xk?/;KO1\$(W{:Wc}Q'
66+
DONT_CHOKE7='?\$6)m*xhTVewc#NVVgxX%eBhJjoHYzpXFg=gzn[rWXPLj5UWj@z\$/UDm8o79n/p%'
67+
DONT_CHOKE8='@}:[4#g%[R-CFR});bY(Z[KcDQDsVn2_y4cSdU<Mjy!c^F`G<!Ks7]kbS]N1:bP:'

tests/main.js

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,3 +388,28 @@ t.test('handles $one$two', ct => {
388388

389389
ct.end()
390390
})
391+
392+
t.test('handles two dollar signs', ct => {
393+
const dotenv = require('dotenv').config({ path: 'tests/.env.test', processEnv: {} })
394+
const parsed = dotenvExpand.expand(dotenv).parsed
395+
396+
ct.equal(parsed.TWO_DOLLAR_SIGNS, 'abcd$')
397+
398+
ct.end()
399+
})
400+
401+
t.test('does not choke', ct => {
402+
const dotenv = require('dotenv').config({ path: 'tests/.env.test', processEnv: {} })
403+
const parsed = dotenvExpand.expand(dotenv).parsed
404+
405+
ct.equal(parsed.DONT_CHOKE1, '.kZh`>4[,[DDU-*Jt+[;8-,@K=,9%;F9KsoXqOE)gpG^X!{)Q+/9Fc(QF}i[NEi!')
406+
ct.equal(parsed.DONT_CHOKE2, '=;+=CNy3)-D=zI6gRP2w$B@0K;Y]e^EFnCmx$Dx?;.9wf-rgk1BcTR0]JtY<S:b_')
407+
ct.equal(parsed.DONT_CHOKE3, 'MUcKSGSY@HCON<1S_siWTP`DgS*Ug],mu]SkqI|7V2eOk9:>&fw;>HEwms`D8E2H')
408+
ct.equal(parsed.DONT_CHOKE4, 'm]zjzfRItw2gs[2:{p{ugENyFw9m)tH6_VCQzer`*noVaI<vqa3?FZ9+6U;K#Bfd')
409+
ct.equal(parsed.DONT_CHOKE5, '#la__nK?IxNlQ%`5q&DpcZ>Munx=[1-AMgAcwmPkToxTaB?kgdF5y`A8m=Oa-B!)')
410+
ct.equal(parsed.DONT_CHOKE6, 'xlC&*<j4J<d._<JKH0RBJV!4(ZQEN-+&!0p137<g*hdY2H4xk?/;KO1$(W{:Wc}Q')
411+
ct.equal(parsed.DONT_CHOKE7, '?$6)m*xhTVewc#NVVgxX%eBhJjoHYzpXFg=gzn[rWXPLj5UWj@z$/UDm8o79n/p%')
412+
ct.equal(parsed.DONT_CHOKE8, '@}:[4#g%[R-CFR});bY(Z[KcDQDsVn2_y4cSdU<Mjy!c^F`G<!Ks7]kbS]N1:bP:')
413+
414+
ct.end()
415+
})

0 commit comments

Comments
 (0)