Class: ClickSession::Configuration

Inherits:
Object
  • Object
show all
Defined in:
lib/click_session/configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#failure_callback_urlObject

Returns the value of attribute failure_callback_url.



19
20
21
# File 'lib/click_session/configuration.rb', line 19

def failure_callback_url
  @failure_callback_url
end

#processor_classObject

Returns the value of attribute processor_class.



19
20
21
# File 'lib/click_session/configuration.rb', line 19

def processor_class
  @processor_class
end

#serializer_classObject

Returns the value of attribute serializer_class.



19
20
21
# File 'lib/click_session/configuration.rb', line 19

def serializer_class
  @serializer_class
end

#success_callback_urlObject

Returns the value of attribute success_callback_url.



19
20
21
# File 'lib/click_session/configuration.rb', line 19

def success_callback_url
  @success_callback_url
end

Instance Method Details

#driver_clientObject



88
89
90
# File 'lib/click_session/configuration.rb', line 88

def driver_client
  @driver_client ||= :poltergeist
end

#driver_client=(client) ⇒ Object



92
93
94
# File 'lib/click_session/configuration.rb', line 92

def driver_client=(client)
  @driver_client = client
end

#enable_screenshot=(enable) ⇒ Object



100
101
102
# File 'lib/click_session/configuration.rb', line 100

def enable_screenshot=(enable)
  @screenshot_enabled = enable
end

#model_classObject



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/click_session/configuration.rb', line 24

def model_class
  if @model_class == nil
    raise NameError.new("      To use ClickSession, you must define the name of the active model\n      you want ClickSession to operate on.\n      See https://github.com/talltorp/click_session for more information.\n    ERROR\n  end\n\n  @model_class.constantize\nend\n".strip_heredoc, 'model_class')

#model_class=(klass) ⇒ Object



36
37
38
# File 'lib/click_session/configuration.rb', line 36

def model_class=(klass)
  @model_class = klass.to_s
end

#notifier_classObject



70
71
72
73
74
75
76
77
78
79
80
81
82
# File 'lib/click_session/configuration.rb', line 70

def notifier_class
  @notifier_class ||= "ClickSession::Notifier"
  constantized_notifier = @notifier_class.constantize

  if notifier_class_violates_interface(constantized_notifier)
    raise ArgumentError.new("      Your custom notifier must inherit ClickSession::Notifier\n      See https://github.com/talltorp/click_session\n    ERROR\n  end\n\n  constantized_notifier\nend\n".strip_heredoc)

#notifier_class=(klass) ⇒ Object



84
85
86
# File 'lib/click_session/configuration.rb', line 84

def notifier_class=(klass)
  @notifier_class = klass.to_s
end

#screenshotObject



104
105
106
107
108
109
110
111
112
113
# File 'lib/click_session/configuration.rb', line 104

def screenshot
  if @screenshot == nil
    raise ArgumentError.new("In order to save screenshots, you need to configure \
      the information.
      https://github.com/talltorp/click_session#optional-configurations-and-extentions
      ")
  end

  @screenshot
end

#screenshot=(screenshot) ⇒ Object



115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/click_session/configuration.rb', line 115

def screenshot=(screenshot)
  if screenshot[:s3_bucket] == nil
    raise ArgumentError.new("The s3_bucket is required")
  end

  if screenshot[:s3_key_id] == nil
    raise ArgumentError.new("The s3_key_id is required")
  end

  if screenshot[:s3_access_key] == nil
    raise ArgumentError.new("The s3_access_key is required")
  end

  @screenshot = screenshot
end

#screenshot_enabled?Boolean

Returns:

  • (Boolean)


96
97
98
# File 'lib/click_session/configuration.rb', line 96

def screenshot_enabled?
  @screenshot_enabled ||= false
end