class ConfluencePage

Public Class Methods

new(response) click to toggle source
# File lib/confluence_page.rb, line 5
def initialize(response)
  @doc = Nokogiri(response)
end

Public Instance Methods

content() click to toggle source
# File lib/confluence_page.rb, line 13
def content
  content = CGI.unescapeHTML @doc.css('#markupTextarea').text
  
  content.gsub!(' ', ' ')
  
  # remove the double pipes used for table headers in Confluence
  content.gsub!('||', '|')

  # remove other noise
  content.gsub!("\r\n", "\n")
  content.gsub!("\\\\\n", '')
  content.gsub!('\\', '')

  # remove any unwanted headers
  content.gsub!(/h\d\. (Scenario: .*)/, '\1')
  content.gsub!(/h\d\. (Scenario Outline: .*)/, '\1')
  content.gsub!(/h\d\. (Background: .*)/, '\1')
  
  #Remove fancy quotes
  content.gsub!('’', "'")
  content.gsub!('‘', "'")
  content.gsub!('“', '"')
  content.gsub!('”', '"')
  
  content.gsub!(/^#(.*)/, '-' + '\1')    
  content
end
title() click to toggle source
# File lib/confluence_page.rb, line 9
def title
  @doc.at('#content-title')[:value]
end