Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
node-sqlite3
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
俞永鹏
node-sqlite3
Commits
024bd4f2
Unverified
Commit
024bd4f2
authored
Apr 28, 2020
by
Mohamed Gharib
Committed by
GitHub
Apr 28, 2020
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
trace: don't require throw to add trace info for verbose (#1317)
parent
5c3c682a
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
67 additions
and
10 deletions
+67
-10
trace.js
lib/trace.js
+7
-10
verbose.test.js
test/verbose.test.js
+60
-0
No files found.
lib/trace.js
View file @
024bd4f2
...
...
@@ -15,17 +15,14 @@ function extendTrace(object, property, pos) {
var
cb
=
arguments
[
pos
];
if
(
typeof
arguments
[
pos
]
===
'function'
)
{
arguments
[
pos
]
=
function
replacement
()
{
try
{
return
cb
.
apply
(
this
,
arguments
);
}
catch
(
err
)
{
if
(
err
&&
err
.
stack
&&
!
err
.
__augmented
)
{
err
.
stack
=
filter
(
err
).
join
(
'
\
n'
);
err
.
stack
+=
'
\
n--> in '
+
name
;
err
.
stack
+=
'
\
n'
+
filter
(
error
).
slice
(
1
).
join
(
'
\
n'
);
err
.
__augmented
=
true
;
}
throw
err
;
var
err
=
arguments
[
0
];
if
(
err
&&
err
.
stack
&&
!
err
.
__augmented
)
{
err
.
stack
=
filter
(
err
).
join
(
'
\
n'
);
err
.
stack
+=
'
\
n--> in '
+
name
;
err
.
stack
+=
'
\
n'
+
filter
(
error
).
slice
(
1
).
join
(
'
\
n'
);
err
.
__augmented
=
true
;
}
return
cb
.
apply
(
this
,
arguments
);
};
}
return
old
.
apply
(
this
,
arguments
);
...
...
test/verbose.test.js
0 → 100644
View file @
024bd4f2
var
sqlite3
=
require
(
'..'
);
var
assert
=
require
(
'assert'
);
var
invalid_sql
=
'update non_existent_table set id=1'
;
var
originalMethods
=
{
Database
:
{},
Statement
:
{},
};
function
backupOriginalMethods
()
{
for
(
var
obj
in
originalMethods
)
{
for
(
var
attr
in
sqlite3
[
obj
].
prototype
)
{
originalMethods
[
obj
][
attr
]
=
sqlite3
[
obj
].
prototype
[
attr
];
}
}
}
function
resetVerbose
()
{
for
(
var
obj
in
originalMethods
)
{
for
(
var
attr
in
originalMethods
[
obj
])
{
sqlite3
[
obj
].
prototype
[
attr
]
=
originalMethods
[
obj
][
attr
];
}
}
}
describe
(
'verbose'
,
function
()
{
it
(
'Shoud add trace info to error when verbose is called'
,
function
(
done
)
{
var
db
=
new
sqlite3
.
Database
(
':memory:'
);
backupOriginalMethods
();
sqlite3
.
verbose
();
db
.
run
(
invalid_sql
,
function
(
err
)
{
assert
(
err
instanceof
Error
);
assert
(
err
.
stack
.
indexOf
(
`Database#run('
${
invalid_sql
}
'`
)
>
-
1
,
`Stack shoud contain trace info, stack =
${
err
.
stack
}
`
);
done
();
resetVerbose
();
});
});
it
(
'Shoud not add trace info to error when verbose is not called'
,
function
(
done
)
{
var
db
=
new
sqlite3
.
Database
(
':memory:'
);
db
.
run
(
invalid_sql
,
function
(
err
)
{
assert
(
err
instanceof
Error
);
assert
(
err
.
stack
.
indexOf
(
invalid_sql
)
===
-
1
,
`Stack shoud not contain trace info, stack =
${
err
.
stack
}
`
);
done
();
});
});
});
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment