Sha256: 49b1fc3f8227cb9ee9600b14941c8f565e58a471e28e9cbaea6eb6fff488af5e

Contents?: true

Size: 1.31 KB

Versions: 1

Compression:

Stored size: 1.31 KB

Contents

require 'jade-rails'
require 'test/unit'

class JadeTest < Test::Unit::TestCase
  JADE_TEMPLATE_FUNCTION_PATTERN = /^function\s+template\s*\(locals\)\s*\{.*\}$/m

  def test_compile
    template = File.read(File.expand_path('../assets/javascripts/jade/sample_template.jade', __FILE__))
    result = Jade.compile(template)
    assert_match(JADE_TEMPLATE_FUNCTION_PATTERN, result)
    assert_no_match(/^\s*<!DOCTYPE html>/, result)
  end

  def test_compile_with_io
    io = StringIO.new('string of jade')
    assert_equal Jade.compile('string of jade'), Jade.compile(io)
  end

  def test_compilation_error
    assert_raise Jade::CompileError do
      Jade.compile <<-JADE
        else
          .foo
      JADE
    end
  end

  def test_includes
    file = File.expand_path('../assets/javascripts/jade/includes/index.jade', __FILE__)
    template = File.read(file)
    result = Jade.compile(template, filename: file)
    assert_match(JADE_TEMPLATE_FUNCTION_PATTERN, result)
    assert_no_match(/^\s*<!DOCTYPE html>/, result)
  end

  def test_extends
    file = File.expand_path('../assets/javascripts/jade/extends/layout.jade', __FILE__)
    template = File.read(file)
    result = Jade.compile(template, filename: file)
    assert_match(JADE_TEMPLATE_FUNCTION_PATTERN, result)
    assert_no_match(/^\s*<!DOCTYPE html>/, result)
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
jade-rails-adapter-1.11.0 test/test_jade-rails.rb