class LearnOpen::Lessons::BaseLesson

Attributes

dot_learn[R]
environment_vars[R]
git_server[R]
id[R]
io[R]
later_lesson[R]
location[R]
logger[R]
name[R]
options[R]
organization[R]
platform[R]
repo_path[R]
system_adapter[R]
use_student_fork[R]

Public Class Methods

new(lesson_data, options = {}) click to toggle source
# File lib/learn_open/lessons/base_lesson.rb, line 20
def initialize(lesson_data, options = {})
  lesson = lesson_data[:lesson]

  @repo_path = lesson.clone_repo
  @organization, @name = repo_path.split('/')

  @git_server = lesson.git_server
  @dot_learn = lesson.dot_learn
  @is_lab = lesson.lab
  @use_student_fork = lesson.use_student_fork
  @later_lesson = lesson_data[:later_lesson]
  @id = lesson_data[:id]

  @logger = options.fetch(:logger, LearnOpen.logger)
  @io = options.fetch(:io, LearnOpen.default_io)
  @system_adapter = options.fetch(:system_adapter, LearnOpen.system_adapter)
  @platform = options.fetch(:platform, LearnOpen.platform)
  @environment_vars = options.fetch(:environment_vars, LearnOpen.environment_vars)
  @location = options.fetch(:lessons_directory) {LearnOpen.lessons_directory}
  @options = options
end

Public Instance Methods

lab?() click to toggle source
# File lib/learn_open/lessons/base_lesson.rb, line 42
def lab?
  @is_lab
end
readme?() click to toggle source
# File lib/learn_open/lessons/base_lesson.rb, line 46
def readme?
  !lab?
end
to_path() click to toggle source
# File lib/learn_open/lessons/base_lesson.rb, line 50
def to_path
  "#{location}/#{name}"
end
to_url() click to toggle source
# File lib/learn_open/lessons/base_lesson.rb, line 54
def to_url
  "https://learn.co/lessons/#{id}"
end