File tree Expand file tree Collapse file tree 4 files changed +58
-0
lines changed
test/fixtures/parseint/case-1 Expand file tree Collapse file tree 4 files changed +58
-0
lines changed Original file line number Diff line number Diff line change 1+ import jscodeshift from 'jscodeshift' ;
2+ import { removeImport } from '../shared.js' ;
3+
4+ /**
5+ * @typedef {import('../../types.js').Codemod } Codemod
6+ * @typedef {import('../../types.js').CodemodOptions } CodemodOptions
7+ */
8+
9+ /**
10+ * @param {CodemodOptions } [options]
11+ * @returns {Codemod }
12+ */
13+ export default function ( options ) {
14+ return {
15+ name : 'parseint' ,
16+ transform : ( { file } ) => {
17+ const j = jscodeshift ;
18+ const root = j ( file . source ) ;
19+
20+ const { identifier } = removeImport ( 'parseint' , root , j ) ;
21+
22+ let dirty = false ;
23+ root
24+ . find ( j . CallExpression , {
25+ callee : {
26+ type : 'Identifier' ,
27+ name : identifier ,
28+ } ,
29+ } )
30+ . forEach ( ( path ) => {
31+ // @ts -ignore
32+ path . node . callee . name = 'parseInt' ;
33+ dirty = true ;
34+ } ) ;
35+
36+ return dirty ? root . toSource ( options ) : file . source ;
37+ } ,
38+ } ;
39+ }
Original file line number Diff line number Diff line change 1+ var assert = require ( 'assert' ) ;
2+
3+ assert . equal ( parseInt ( '-3' ) , - 3 ) ;
4+ assert . equal ( parseInt ( '0x10' ) , 16 ) ;
5+ assert . equal ( parseInt ( '30' , 7 ) , 21 ) ;
6+ assert . equal ( parseInt ( 'ef' ) , NaN ) ;
Original file line number Diff line number Diff line change 1+ var assert = require ( 'assert' ) ;
2+ var banana = require ( 'parseint' ) ;
3+
4+ assert . equal ( banana ( '-3' ) , - 3 ) ;
5+ assert . equal ( banana ( '0x10' ) , 16 ) ;
6+ assert . equal ( banana ( '30' , 7 ) , 21 ) ;
7+ assert . equal ( banana ( 'ef' ) , NaN ) ;
Original file line number Diff line number Diff line change 1+ var assert = require ( 'assert' ) ;
2+
3+ assert . equal ( parseInt ( '-3' ) , - 3 ) ;
4+ assert . equal ( parseInt ( '0x10' ) , 16 ) ;
5+ assert . equal ( parseInt ( '30' , 7 ) , 21 ) ;
6+ assert . equal ( parseInt ( 'ef' ) , NaN ) ;
You can’t perform that action at this time.
0 commit comments