text: import { assert, test } from '../run/test.setup.js'
  import { polyfill } from '../mod.js'
  
  test(() => {
  	return [
  		{
  			name: 'Includes CharacterData functionality',
  			test() {
  				const target = {}
  
  				polyfill(target)
  
  				assert.equal(Reflect.has(target, 'CharacterData'), true)
  				assert.equal(Reflect.has(target, 'Text'), true)
  				assert.equal(Reflect.has(target, 'Comment'), true)
  			},
  		},
  		{
  			name: 'Throws new CharacterData',
  			test() {
  				const target = {}
  
  				polyfill(target)
  			},
  		},
  		{
  			name: 'Supports new Comment',
  			test() {
  				const target = polyfill({})
  
  				assert.doesNotThrow(() => {
  					new target.Comment()
  				})
  
  				assert.equal(new target.Comment().constructor.name, 'Comment')
  				assert.equal(
  					Object.prototype.toString.call(new target.Comment()),
  					'[object Comment]'
  				)
  
  				assert.equal(new target.Comment('hello').data, 'hello')
  				assert.equal(new target.Comment('hello').textContent, 'hello')
  			},
  		},
  		{
  			name: 'Supports new Text',
  			test() {
  				const target = polyfill({})
  
  				assert.doesNotThrow(() => {
  					new target.Text()
  				})
  
  				assert.equal(new target.Text().constructor.name, 'Text')
  				assert.equal(
  					Object.prototype.toString.call(new target.Text()),
  					'[object Text]'
  				)
  
  				assert.equal(new target.Text('hello').data, 'hello')
  				assert.equal(new target.Text('hello').textContent, 'hello')
  			},
  		},
  	]
  })
  