Sha256: bde5a0a332faf92f2a01d6f2a95c925b33d3251faf7b33d94c07a52eb95b0a0c

Contents?: true

Size: 1.15 KB

Versions: 9

Compression:

Stored size: 1.15 KB

Contents

# frozen_string_literal: true

require 'test_helper'

class TestTableOfContentsFilter < Minitest::Test
  include Jekyll::TableOfContentsFilter

  DUMMY_HTML = '<div>Dummy HTML Content</div>'

  def test_toc_only
    @context = disable_toc_context
    assert_empty toc_only(DUMMY_HTML)
  end

  def test_inject_anchors
    @context = disable_toc_context
    assert_equal DUMMY_HTML, inject_anchors(DUMMY_HTML)
  end

  def test_toc
    @context = disable_toc_context
    assert_equal DUMMY_HTML, toc(DUMMY_HTML)
  end

  def test_toc_only2
    @context = enable_toc_context
    assert_equal "<ul class=\"section-nav\">\n</ul>", toc_only(DUMMY_HTML)
  end

  def test_inject_anchors2
    @context = enable_toc_context
    assert_equal DUMMY_HTML, inject_anchors(DUMMY_HTML)
  end

  def test_toc2
    @context = enable_toc_context
    assert_equal "<ul class=\"section-nav\">\n</ul>#{DUMMY_HTML}", toc(DUMMY_HTML)
  end

  private

  def disable_toc_context
    Struct.new(:registers).new(page: { 'toc' => false })
  end

  def enable_toc_context
    Struct.new(:registers).new(
      page: { 'toc' => true },
      site: Struct.new(:config).new({ 'toc' => false })
    )
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
jekyll-toc-0.15.0 test/test_jekyll-toc.rb
jekyll-toc-0.15.0.rc test/test_jekyll-toc.rb
jekyll-toc-0.14.0 test/test_jekyll-toc.rb
jekyll-toc-0.13.1 test/test_jekyll-toc.rb
jekyll-toc-0.13.0 test/test_jekyll-toc.rb
jekyll-toc-0.12.2 test/test_jekyll-toc.rb
jekyll-toc-0.12.1 test/test_jekyll-toc.rb
jekyll-toc-0.12.0 test/test_jekyll-toc.rb
jekyll-toc-0.12.0.rc3 test/test_jekyll-toc.rb