aboutsummaryrefslogtreecommitdiff
path: root/preact/devtools/test/browser
diff options
context:
space:
mode:
authorSebastian <sebasjm@gmail.com>2021-08-23 16:46:06 -0300
committerSebastian <sebasjm@gmail.com>2021-08-23 16:48:30 -0300
commit38acabfa6089ab8ac469c12b5f55022fb96935e5 (patch)
tree453dbf70000cc5e338b06201af1eaca8343f8f73 /preact/devtools/test/browser
parentf26125e039143b92dc0d84e7775f508ab0cdcaa8 (diff)
downloadnode-vendor-38acabfa6089ab8ac469c12b5f55022fb96935e5.tar.gz
node-vendor-38acabfa6089ab8ac469c12b5f55022fb96935e5.tar.bz2
node-vendor-38acabfa6089ab8ac469c12b5f55022fb96935e5.zip
added web vendorsHEADmaster
Diffstat (limited to 'preact/devtools/test/browser')
-rw-r--r--preact/devtools/test/browser/addHookName.test.js51
1 files changed, 51 insertions, 0 deletions
diff --git a/preact/devtools/test/browser/addHookName.test.js b/preact/devtools/test/browser/addHookName.test.js
new file mode 100644
index 0000000..28b06b0
--- /dev/null
+++ b/preact/devtools/test/browser/addHookName.test.js
@@ -0,0 +1,51 @@
+import { createElement, render, options } from 'preact';
+import { setupScratch, teardown } from '../../../test/_util/helpers';
+import { useState } from 'preact/hooks';
+import { addHookName } from 'preact/devtools';
+
+/** @jsx createElement */
+
+describe('addHookName', () => {
+ /** @type {HTMLDivElement} */
+ let scratch;
+
+ beforeEach(() => {
+ scratch = setupScratch();
+ });
+
+ afterEach(() => {
+ teardown(scratch);
+ delete options._addHookName;
+ });
+
+ it('should do nothing when no options hook is present', () => {
+ function useFoo() {
+ return addHookName(useState(0), 'foo');
+ }
+
+ function App() {
+ let [v] = useFoo();
+ return <div>{v}</div>;
+ }
+
+ expect(() => render(<App />, scratch)).to.not.throw();
+ });
+
+ it('should call options hook with value', () => {
+ let spy = (options._addHookName = sinon.spy());
+
+ function useFoo() {
+ return addHookName(useState(0), 'foo');
+ }
+
+ function App() {
+ let [v] = useFoo();
+ return <div>{v}</div>;
+ }
+
+ render(<App />, scratch);
+
+ expect(spy).to.be.calledOnce;
+ expect(spy).to.be.calledWith('foo');
+ });
+});