aboutsummaryrefslogtreecommitdiff
path: root/js/tests/unit/button.spec.js
diff options
context:
space:
mode:
authorGeoSot <[email protected]>2021-06-03 18:53:27 +0300
committerGitHub <[email protected]>2021-06-03 18:53:27 +0300
commitc98657b8303150bfda3bdea750055b83a29b27a3 (patch)
tree6f7b347461e3fdd380f0d4e990440e6fc427af61 /js/tests/unit/button.spec.js
parent4a5029ea29ac75243dfec68153051292fc70f5cf (diff)
downloadbootstrap-c98657b8303150bfda3bdea750055b83a29b27a3.tar.xz
bootstrap-c98657b8303150bfda3bdea750055b83a29b27a3.zip
Add `getOrCreateInstance` method in base-component (#33276)
Co-authored-by: Rohit Sharma <[email protected]> Co-authored-by: XhmikosR <[email protected]>
Diffstat (limited to 'js/tests/unit/button.spec.js')
-rw-r--r--js/tests/unit/button.spec.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/js/tests/unit/button.spec.js b/js/tests/unit/button.spec.js
index 90cf76614..be99177e8 100644
--- a/js/tests/unit/button.spec.js
+++ b/js/tests/unit/button.spec.js
@@ -164,4 +164,26 @@ describe('Button', () => {
expect(Button.getInstance(div)).toEqual(null)
})
})
+
+ describe('getOrCreateInstance', () => {
+ it('should return button instance', () => {
+ fixtureEl.innerHTML = '<div></div>'
+
+ const div = fixtureEl.querySelector('div')
+ const button = new Button(div)
+
+ expect(Button.getOrCreateInstance(div)).toEqual(button)
+ expect(Button.getInstance(div)).toEqual(Button.getOrCreateInstance(div, {}))
+ expect(Button.getOrCreateInstance(div)).toBeInstanceOf(Button)
+ })
+
+ it('should return new instance when there is no button instance', () => {
+ fixtureEl.innerHTML = '<div></div>'
+
+ const div = fixtureEl.querySelector('div')
+
+ expect(Button.getInstance(div)).toEqual(null)
+ expect(Button.getOrCreateInstance(div)).toBeInstanceOf(Button)
+ })
+ })
})