Class: Dialog

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args) ⇒ Dialog

Returns a new instance of Dialog.



35
36
37
38
39
# File 'lib/load_dialogs.rb', line 35

def initialize args
  args.each do |k,v|
    instance_variable_set("@#{k}", v) unless v.nil?
  end
end

Instance Attribute Details

#describeObject (readonly)

Returns the value of attribute describe.



33
34
35
# File 'lib/load_dialogs.rb', line 33

def describe
  @describe
end

#file(file) ⇒ Object (readonly)

Returns the value of attribute file.



33
34
35
# File 'lib/load_dialogs.rb', line 33

def file
  @file
end

#interactionsObject (readonly)

Returns the value of attribute interactions.



33
34
35
# File 'lib/load_dialogs.rb', line 33

def interactions
  @interactions
end

#nameObject (readonly)

Returns the value of attribute name.



33
34
35
# File 'lib/load_dialogs.rb', line 33

def name
  @name
end

Instance Method Details

#create_example(interactions, examples = []) ⇒ Object



62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# File 'lib/load_dialogs.rb', line 62

def create_example(interactions, examples=[])
  return if interactions.size == 0

  @@lex_chat = lex_chat()
  spec = ::RSpec.describe "#{@describe} #{@name}" do

    it interactions[0] do
      resp = @@lex_chat.post_message(interactions[0], 'user_id')

      expect(resp[:message]).to eql(interactions[1])
    end
  end

  examples << spec
  create_example(interactions.drop(2), examples)

  examples
end

#create_example_groupObject



54
55
56
# File 'lib/load_dialogs.rb', line 54

def create_example_group()
  @examples = create_example(@interactions).flatten
end

#examplesObject



58
59
60
# File 'lib/load_dialogs.rb', line 58

def examples
  @examples
end

#lex_chatObject



50
51
52
# File 'lib/load_dialogs.rb', line 50

def lex_chat
  @lex_chat ||= BotSpec::AWS::LexService.new({botname: LoadDialogs.botname})
end