class RspecApiDocs::Renderer::RaddocsRenderer

Attributes

resources[R]

Public Class Methods

new(resources) click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 12
def initialize(resources)
  @resources = resources
end

Public Instance Methods

render() click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 16
def render
  write_index
  write_examples
end

Private Instance Methods

file(resource, example) click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 51
def file(resource, example)
  output_dir + Link.(resource.name, example.name)
end
output_dir() click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 47
def output_dir
  Pathname.new RspecApiDocs.configuration.output_dir
end
write_example(resource, example) click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 39
def write_example(resource, example)
  FileUtils.mkdir_p file(resource, example).dirname

  File.open(file(resource, example), 'w') do |f|
    f.write JSON.pretty_generate(ResourceSerializer.new(resource, example).to_h) + "\n"
  end
end
write_examples() click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 31
def write_examples
  resources.each do |resource|
    resource.examples.each do |example|
      write_example(resource, example)
    end
  end
end
write_index() click to toggle source
# File lib/rspec_api_docs/formatter/renderer/raddocs_renderer.rb, line 23
def write_index
  FileUtils.mkdir_p output_dir

  File.open(output_dir + 'index.json', 'w') do |f|
    f.write JSON.pretty_generate(IndexSerializer.new(resources).to_h) + "\n"
  end
end