botspec 0.4.9 → 0.4.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: cbd692787dd9635586ffac7978dc137c978c24e5
4
- data.tar.gz: 455617f8f2ea6e0d373f76d6c2ddb3ef2a0d7eb1
3
+ metadata.gz: 52a9fe509aded882158e7a905abd7a4bae5b7323
4
+ data.tar.gz: 7a002b2de6b4f8e4a80650f9f04865c94a559c60
5
5
  SHA512:
6
- metadata.gz: e7ba529d6d880b39bf624b5050f9dfed01f0dd0774fe8f19b508586a055c84071099a09acbb133883e909e3faf137e1dab1dee1ea195f89a5859299419a7a2d5
7
- data.tar.gz: c9d667e8dc7dea179eb82c41242fe8fbd57d19dbd53d1a698f52cc4f73d5f1e27fcb559195c45fd85c1823b19ddadc04487493218797547f7085c76615dc0551
6
+ metadata.gz: 8fee6513811028d9c1d60724b35fd2e81ee23b7705f66871a1aa7e071c6296590ba561e13c1c4bc8882e2b1b3533e296a57b0051223438f8a07be62852938219
7
+ data.tar.gz: 62311a3913997f1dbaf0fcaaa7e0f4f260f508f9b648541c851685e9a837c4c15d52ab60f59acbf2a124343a471760f6bd5ab9da33909f79b80dad4b36c21e2d
@@ -0,0 +1,73 @@
1
+ # Ruby CircleCI 2.0 configuration file
2
+ #
3
+ # Check https://circleci.com/docs/2.0/language-ruby/ for more details
4
+ #
5
+ version: 2
6
+ jobs:
7
+ build:
8
+ docker:
9
+ # specify the version you desire here
10
+ - image: circleci/ruby:2.4.1-node-browsers
11
+ environment:
12
+ BUNDLER_VERSION: 2.0.2
13
+
14
+ working_directory: ~/repo
15
+
16
+ steps:
17
+ - checkout
18
+
19
+ - run:
20
+ name: install dependencies
21
+ command: |
22
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
23
+
24
+ # run tests!
25
+ - run:
26
+ name: run tests
27
+ command: |
28
+ mkdir /tmp/test-results
29
+ rake spec
30
+
31
+ publish:
32
+ docker:
33
+ # specify the version you desire here
34
+ - image: circleci/ruby:2.4.1-node-browsers
35
+
36
+ working_directory: ~/repo
37
+
38
+ steps:
39
+ - add_ssh_keys:
40
+ fingerprints:
41
+ - "4c:60:84:77:2a:a6:e5:1a:4c:7f:c3:fc:dd:4c:78:c4"
42
+ - checkout
43
+
44
+ - run:
45
+ name: Gem Release
46
+ command: |
47
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
48
+ git config user.email "elliottmurray@gmail.com"
49
+ git config user.name "Circleci"
50
+ git config --global push.default simple
51
+ git push --set-upstream origin $CIRCLE_BRANCH
52
+ .circleci/setup-rubygems.sh
53
+
54
+ script/patch.sh
55
+
56
+ - run:
57
+ name: Docker Release
58
+ command: curl --data build=true -X POST https://cloud.docker.com/api/build/v1/source/06910a8b-39e1-4929-b55c-4111c3216452/trigger/24b37a19-bd4c-461d-ba80-3d9f1b0704bd/call/
59
+
60
+ workflows:
61
+ version: 2
62
+ build_and_publish:
63
+ jobs:
64
+ - build
65
+ - publish:
66
+ requires:
67
+ - build
68
+ filters:
69
+ branches:
70
+ only:
71
+ - master
72
+ - publish_gem
73
+
@@ -0,0 +1,5 @@
1
+ #!/bin/bash
2
+
3
+ mkdir /home/circleci/.gem
4
+ echo -e "---\r\n:rubygems_api_key: $RUBYGEMS_API_KEY" > /home/circleci/.gem/credentials
5
+ chmod 0600 /home/circleci/.gem/credentials
data/.gitignore CHANGED
@@ -36,3 +36,5 @@ tmp/
36
36
  # ignore lock file
37
37
  Gemfile.lock
38
38
 
39
+ vendor/
40
+
data/botspec.gemspec CHANGED
@@ -42,8 +42,6 @@ Gem::Specification.new do |gem|
42
42
  gem.add_runtime_dependency 'thor', "~> 0.20.0"
43
43
  gem.add_runtime_dependency 'hashie', "~> 3.6.0"
44
44
 
45
- gem.add_development_dependency "bundler", ">= 1.16"
46
-
47
45
  gem.add_development_dependency "guard-rspec", "~> 4.7"
48
46
  gem.add_development_dependency "rake", "~> 10.0"
49
47
  gem.add_development_dependency "byebug"
@@ -1,3 +1,3 @@
1
1
  module Botspec
2
- VERSION = "0.4.9"
2
+ VERSION = "0.4.10"
3
3
  end
@@ -0,0 +1,43 @@
1
+
2
+ require 'botspec/lex/lex_service.rb'
3
+
4
+
5
+ module ChatbotHelpers
6
+
7
+ @client = nil
8
+ @logger = nil
9
+ @response = nil
10
+
11
+ def chatbot_client
12
+ @client ||= BotSpec::AWS::LexService.new({botname: 'WebUiOrderFlowers'})
13
+ end
14
+
15
+ def the_logger
16
+ @logger = @logger ||= Logger.new(STDOUT)
17
+ @logger.level = Logger::INFO
18
+ @logger
19
+ end
20
+
21
+ def user(utterance)
22
+ the_logger.info "User says: " + utterance.inspect
23
+ @response = chatbot_client.post_message(utterance, 'user_id')
24
+ end
25
+
26
+ def chatbot(expected_response)
27
+ the_logger.info "Expected response: " + expected_response.inspect
28
+ the_logger.info "Actual response: " + @response.message.inspect
29
+ expect(@response.message).to match(expected_response)
30
+ end
31
+
32
+ def intent_fired(intent_details)
33
+ expected_intent = intent_details.first
34
+ the_logger.info "\n\n got this intent.data: " + @response.data.inspect
35
+
36
+ expected_intent.keys.each do |key|
37
+ expect(@response.data[key]).to eq(expected_intent[key])
38
+ end
39
+
40
+ end
41
+
42
+ end
43
+
data/lib/load_dialogs.rb CHANGED
@@ -12,7 +12,6 @@ class LoadDialogs
12
12
  @@botname = botname
13
13
 
14
14
  dialog_paths = Dir.glob(dialogs_path).select{ |e| File.file? e }
15
- #dialog_paths = Dir["#{dialogs_path}*\[yaml|yml\]"]
16
15
  dialog_yamls = dialog_paths.collect{ |dialog_file| Hashie.symbolize_keys YAML.load_file(dialog_file).merge!(file: dialog_file) }
17
16
 
18
17
  dialog_yamls.collect{ |dialog_content|
@@ -30,7 +29,8 @@ class LoadDialogs
30
29
  end
31
30
 
32
31
  class Dialog
33
- attr_reader :describe, :name, :interactions, :file
32
+ attr_reader :describe, :name, :interactions
33
+ attr_accessor :file
34
34
 
35
35
  def initialize args
36
36
  args.each do |k,v|
@@ -38,15 +38,10 @@ class Dialog
38
38
  end
39
39
  end
40
40
 
41
- def file(file)
42
- @file = file
43
- end
44
-
45
41
  def interactions
46
42
  @interactions
47
43
  end
48
44
 
49
-
50
45
  def lex_chat
51
46
  @lex_chat ||= BotSpec::AWS::LexService.new({botname: LoadDialogs.botname})
52
47
  end
@@ -23,7 +23,6 @@ module BotSpec
23
23
 
24
24
  def run(args, out, err)
25
25
 
26
-
27
26
  setup(err, out)
28
27
 
29
28
  botname = args[:botname]
data/script/release.sh CHANGED
@@ -7,11 +7,11 @@ bundle exec bump ${MODE} --no-commit
7
7
 
8
8
  #bundle exec appraisal update
9
9
  bundle exec rake generate_changelog
10
- git add lib/botspec/version.rb CHANGELOG.md
11
- git commit -m "chore(release): version $(ruby -r ./lib/botspec/version.rb -e "puts Botspec::VERSION")" && git push
10
+ git add lib/botspec/version.rb CHANGELOG.md
11
+ git commit -m "chore(release) [ci skip]: version $(ruby -r ./lib/botspec/version.rb -e "puts Botspec::VERSION")" && git push
12
12
  bundle exec rake release
13
13
 
14
14
  # Dockerhub release
15
- docker build -t botspec .
16
- docker tag botspec elliottmurray/botspec
17
- docker push elliottmurray/botspec
15
+ #docker build -t botspec .
16
+ #docker tag botspec elliottmurray/botspec
17
+ #docker push elliottmurray/botspec
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: botspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.9
4
+ version: 0.4.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elliott Murray
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-07-08 00:00:00.000000000 Z
11
+ date: 2019-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -94,20 +94,6 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 3.6.0
97
- - !ruby/object:Gem::Dependency
98
- name: bundler
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - ">="
102
- - !ruby/object:Gem::Version
103
- version: '1.16'
104
- type: :development
105
- prerelease: false
106
- version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - ">="
109
- - !ruby/object:Gem::Version
110
- version: '1.16'
111
97
  - !ruby/object:Gem::Dependency
112
98
  name: guard-rspec
113
99
  requirement: !ruby/object:Gem::Requirement
@@ -185,6 +171,8 @@ executables: []
185
171
  extensions: []
186
172
  extra_rdoc_files: []
187
173
  files:
174
+ - ".circleci/config.yml"
175
+ - ".circleci/setup-rubygems.sh"
188
176
  - ".gitignore"
189
177
  - ".rspec"
190
178
  - ".travis.yml"
@@ -204,6 +192,7 @@ files:
204
192
  - lib/botspec/lex/lex_service.rb
205
193
  - lib/botspec/tasks/verification_task.rb
206
194
  - lib/botspec/version.rb
195
+ - lib/chatbot_helpers.rb
207
196
  - lib/cli.thor
208
197
  - lib/load_dialogs.rb
209
198
  - lib/rspec/botspec_runner.rb
@@ -231,7 +220,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
231
220
  version: '0'
232
221
  requirements: []
233
222
  rubyforge_project:
234
- rubygems_version: 2.5.2.3
223
+ rubygems_version: 2.6.13
235
224
  signing_key:
236
225
  specification_version: 4
237
226
  summary: Acceptance tests for bots