Sha256: 8ae50cfbdf4d308440c1ba28084720669f930eb235cd8b558b1c6314aa4cafd2

Contents?: true

Size: 1.48 KB

Versions: 19

Compression:

Stored size: 1.48 KB

Contents

require File.dirname(__FILE__) + "/spec_helper"

class MyDocServerSerializerRouter
  attr_accessor :request
  def docs_prefix; 'PREFIX' end
  def initialize; @request = mock_request end
end

class MockDocServerHelper
  include YARD::Templates::Helpers::BaseHelper
  include YARD::Templates::Helpers::HtmlHelper
  include YARD::Server::DocServerHelper

  attr_accessor :adapter
  attr_accessor :single_library
  attr_accessor :library

  def initialize
    @single_library = false
    @library = LibraryVersion.new('foo')
    @adapter = mock_adapter(:router => MyDocServerSerializerRouter.new)
    @serializer = YARD::Server::DocServerSerializer.new
    @object = YARD::Registry.root
  end
end

describe YARD::Server::DocServerHelper do
  before do
    @helper = MockDocServerHelper.new
  end

  describe '#url_for' do
    it "should not link to /library/ if single_library = true" do
      @helper.single_library = true
      @helper.url_for(Registry.root).should == "/PREFIX/toplevel"
    end

    it "should return /PREFIX/foo/version if foo has a version" do
      @helper.library = LibraryVersion.new('foo', 'bar')
      @helper.adapter.router.request.version_supplied = true
      @helper.url_for(P('A')).should == '/PREFIX/foo/bar/A'
    end
  end
  
  describe '#url_for_file' do
    it "should properly link file objects using file/ prefix" do
      file = CodeObjects::ExtraFileObject.new('a/b/FooBar.md', '')
      @helper.url_for_file(file).should == '/PREFIX/foo/file/a/b/FooBar.md'
    end
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
challah-0.6.2 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.6.1 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.6.0 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.5.4 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.5.3 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.5.2 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.5.1 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.5.0 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.4.1 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.4.0 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.5 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.4 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.3 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.2 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.1 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.3.0 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.2.1 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
challah-0.2.0 vendor/bundle/gems/yard-0.7.5/spec/server/doc_server_helper_spec.rb
yard-0.7.5 spec/server/doc_server_helper_spec.rb