/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import domSibling from 'consul-ui/utils/dom/sibling'; import { module, test } from 'qunit'; module('Unit | Utility | dom/sibling', function () { test('it returns the next sibling if it matches the requested nodeName', function (assert) { const expected = { nodeType: 1, nodeName: 'H1', }; const actual = domSibling( { nextSibling: expected, }, 'h1' ); assert.deepEqual(actual, expected); }); test('it returns the next sibling from a list of nodes if it matches the requested nodeName', function (assert) { const expected = { nodeType: 1, nodeName: 'H1', }; const nodes = { nodeType: 3, nodeName: '#text', nextSibling: { nodeType: 4, nodeName: '#cdata-section', nextSibling: expected, }, }; const actual = domSibling( { nextSibling: nodes, }, 'h1' ); assert.deepEqual(actual, expected); }); test("it returns the null from a list of nodes if it can't match", function (assert) { let expected; const nodes = { nodeType: 3, nodeName: '#text', nextSibling: { nodeType: 4, nodeName: '#cdata-section', nextSibling: { nodeType: 1, nodeName: 'p', }, }, }; const actual = domSibling( { nextSibling: nodes, }, 'h1' ); assert.deepEqual(actual, expected); }); });