summaryrefslogtreecommitdiff
path: root/preact/test/browser/lifecycles/componentDidMount.test.js
diff options
context:
space:
mode:
Diffstat (limited to 'preact/test/browser/lifecycles/componentDidMount.test.js')
-rw-r--r--preact/test/browser/lifecycles/componentDidMount.test.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/preact/test/browser/lifecycles/componentDidMount.test.js b/preact/test/browser/lifecycles/componentDidMount.test.js
new file mode 100644
index 0000000..086702b
--- /dev/null
+++ b/preact/test/browser/lifecycles/componentDidMount.test.js
@@ -0,0 +1,36 @@
+import { createElement, render, Component } from 'preact';
+import { setupScratch, teardown } from '../../_util/helpers';
+
+/** @jsx createElement */
+
+describe('Lifecycle methods', () => {
+ /** @type {HTMLDivElement} */
+ let scratch;
+
+ beforeEach(() => {
+ scratch = setupScratch();
+ });
+
+ afterEach(() => {
+ teardown(scratch);
+ });
+
+ describe('#componentDidMount', () => {
+ it('is invoked after refs are set', () => {
+ const spy = sinon.spy();
+
+ class App extends Component {
+ componentDidMount() {
+ expect(spy).to.have.been.calledOnceWith(scratch.firstChild);
+ }
+
+ render() {
+ return <div ref={spy} />;
+ }
+ }
+
+ render(<App />, scratch);
+ expect(spy).to.have.been.calledOnceWith(scratch.firstChild);
+ });
+ });
+});