Class: StrangeRequires

Inherits:
BuildAction show all
Defined in:
lib/kwala/actions/strange_requires.rb

Defined Under Namespace

Classes: AmritaPrintStrategy

Instance Method Summary collapse

Methods inherited from BuildAction

command_line_action_name, command_line_action_names, create_action_from_command_line_name, detailed_template_file, #score, summary_template_file

Methods included from InheritanceTracker

#get_implementors

Constructor Details

#initializeStrangeRequires

Returns a new instance of StrangeRequires.



74
75
76
77
# File 'lib/kwala/actions/strange_requires.rb', line 74

def initialize
  @amrita_ps = AmritaPrintStrategy.new
  @strange_requires_detector = StrangeRequiresDetector.new(@amrita_ps)
end

Instance Method Details

#build_action(context) ⇒ Object



79
80
81
# File 'lib/kwala/actions/strange_requires.rb', line 79

def build_action(context)
  @strange_requires_detector.check(context.project_directory, context.project_directory)
end

#detailed_display(context) ⇒ Object



98
99
100
101
102
103
104
# File 'lib/kwala/actions/strange_requires.rb', line 98

def detailed_display(context)
  template = TemplateFile.new(self.class.detailed_template_file)
  context.amrita_data[:require_details] = @amrita_ps.require_data_detail
  det_res = ProjectBuilderUtils.expand_template(template, context.amrita_data)
  det_file = details_file(context)
  [det_file, det_res]
end

#details_file(context) ⇒ Object



83
84
85
# File 'lib/kwala/actions/strange_requires.rb', line 83

def details_file(context)
  "#{context.output_directory}/#{details_link(context)}"
end


86
87
88
# File 'lib/kwala/actions/strange_requires.rb', line 86

def details_link(context)
  "#{context.project_name}_requires.html"
end

#summary_display(context) ⇒ Object



90
91
92
93
94
95
96
# File 'lib/kwala/actions/strange_requires.rb', line 90

def summary_display(context)
  template = TemplateFile.new(self.class.summary_template_file)
  context.amrita_data[:require_results] = @amrita_ps.require_data_summary
  context.amrita_data[:require_details] =
    Amrita::e(:a, :href => details_link(context)) { "Requires Details" }
  summary_expand(template, context)
end