File tree 2 files changed +12
-1
lines changed
2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change 78
78
if ( ! prefix ) {
79
79
prefix = '' ;
80
80
}
81
+ if ( tip . indexOf ( prefix ) === 0 ) {
82
+ tip = tip . substr ( prefix . length ) ;
83
+ }
81
84
do {
82
85
tip = utility . generateNextName ( tip ) ;
83
86
} while ( ! this . passAsUnique ( prefix + tip ) ) ;
Original file line number Diff line number Diff line change @@ -186,9 +186,17 @@ describe 'mangle:', ->
186
186
expect (result .body [0 ].expression .id .name ).to .equal ' name'
187
187
188
188
describe ' `renamePrefix` option:' , ->
189
- program = esprima .parse ' (function name() { var i = 42; });'
190
189
191
190
it ' prefixes identifier with the given value' , ->
191
+ program = esprima .parse ' (function name() { var i = 42; });'
192
192
result = esshorten .mangle program,
193
193
renamePrefix : ' foo_'
194
194
expect (result .body [0 ].expression .id .name .indexOf (' foo_' )).to .equal 0
195
+
196
+ it ' prefixes identifier inside IIFE without multiplying prefixes' , ->
197
+ program = esprima .parse ' (function name() { var i = 42; var a = 5; })();'
198
+ result = esshorten .mangle program,
199
+ renamePrefix : ' foo_'
200
+
201
+ expect (result .body [0 ].expression .callee .body .body [1 ].declarations [0 ].id .name .indexOf (' foo_' )).to .equal 0
202
+ expect (result .body [0 ].expression .callee .body .body [1 ].declarations [0 ].id .name .indexOf (' foo_foo_' )).to .equal - 1
You can’t perform that action at this time.
0 commit comments