Module: Xing::SpecDoc

Defined in:
lib/xing/specdoc/module.rb,
lib/xing/specdoc/document.rb,
lib/xing/specdoc/winnower.rb,
lib/xing/specdoc/patterner.rb,
lib/xing/specdoc/api-doccer.rb,
lib/xing/specdoc/doc-family.rb

Defined Under Namespace

Classes: ApiDoccer, DocFamily, Document, Patterner, Winnower

Class Method Summary collapse

Class Method Details

.doc_hashObject



19
20
21
# File 'lib/xing/specdoc/module.rb', line 19

def doc_hash
  @doc_hash ||= Hash.new{|h,k| h[k]= DocFamily.new(k)}
end

.included(group) ⇒ Object



33
34
35
36
37
# File 'lib/xing/specdoc/module.rb', line 33

def included(group)
  group.after(:each) do |example|
    ApiDoccer.new(example, request, response).store
  end
end

.record_docsObject



27
28
29
30
31
# File 'lib/xing/specdoc/module.rb', line 27

def record_docs
  doc_hash.each_pair do |_, docs|
    docs.record
  end
end

.request_target_dirObject



15
16
17
# File 'lib/xing/specdoc/module.rb', line 15

def request_target_dir
  File.join(target_dir,  "requests")
end

.response_target_dirObject



11
12
13
# File 'lib/xing/specdoc/module.rb', line 11

def response_target_dir
  File.join(target_dir,  "responses")
end

.store(doc) ⇒ Object



23
24
25
# File 'lib/xing/specdoc/module.rb', line 23

def store(doc)
  doc_hash[doc.base_filename].add(doc.document)
end

.target_dirObject



7
8
9
# File 'lib/xing/specdoc/module.rb', line 7

def target_dir
  RSpec.configuration.specdoc_target_directory
end