text: 
  import assert from 'assert'
  
  export default function (state) {
    const { document, selection } = state
    const texts = document.getTexts()
    const first = texts.first()
    const range = selection.merge({
      anchorKey: first.key,
      anchorOffset: 1,
      focusKey: first.key,
      focusOffset: 3
    })
  
    const next = state
      .transform()
      .select(range)
      .wrapInline('hashtag')
      .apply()
  
    const updated = next.document.getTexts().get(1)
  
    assert.deepEqual(
      next.selection.toJS(),
      range.merge({
        anchorKey: updated.key,
        anchorOffset: 0,
        focusKey: updated.key,
        focusOffset: updated.length
      }).toJS()
    )
  
    return next
  }
  