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.



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

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.



31
32
33
# File 'lib/load_dialogs.rb', line 31

def describe
  @describe
end

#fileObject

Returns the value of attribute file.



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

def file
  @file
end

#interactionsObject (readonly)

Returns the value of attribute interactions.



31
32
33
# File 'lib/load_dialogs.rb', line 31

def interactions
  @interactions
end

#nameObject (readonly)

Returns the value of attribute name.



31
32
33
# File 'lib/load_dialogs.rb', line 31

def name
  @name
end

Instance Method Details

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



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
# File 'lib/load_dialogs.rb', line 56

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

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

    let(:resp) { @@lex_chat.post_message(interactions[0], 'user_id')}
    it interactions[0] do
      expect(resp[:message]).to match(interactions[1])
    end
  end

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

  examples
end

#create_example_groupObject



48
49
50
# File 'lib/load_dialogs.rb', line 48

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

#examplesObject



52
53
54
# File 'lib/load_dialogs.rb', line 52

def examples
  @examples
end

#lex_chatObject



44
45
46
# File 'lib/load_dialogs.rb', line 44

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