behaves 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: bb8c4c8e068d5afc407dcf91b31d6b1814b68e46
4
- data.tar.gz: b58fc69c16d34a495ae0800d415432c3fdf898e5
2
+ SHA256:
3
+ metadata.gz: a306c547822ce551aa1e2c6f8073eca5ba9c9e91526bfad490368845af6e5185
4
+ data.tar.gz: c31eaf7f25270f52bcce238b0bd6a601e1a4c96a38ada2f22546aa149f32af28
5
5
  SHA512:
6
- metadata.gz: 3a8ee84fd6150895bdec7402a9104f2822e543200cce334b8b726dd8010d9092a775be2946e15b1652e12136f93e52976029d303ddcd9455ec447149cba12397
7
- data.tar.gz: 05ee94ea25e3ce0deab9d9b193a78ed47b82b8453157e40f7bfa07e1de06ec9f79bf66b034a7791f9fbb86e47617def50d07ecfc1ddacaf99f8b600af5b0a85d
6
+ metadata.gz: 6d0a66ad83736a1c0bae7dfdbdca4bb7f9af48c6b8043f7cc0066e2dea68b16e9e776bc603272e15c063912dee3fa6972ccc0a178098fd891158f366b38421ed
7
+ data.tar.gz: 2dae6fcdc1e832fa8e2e2f4e6d9485f4925f6ba355b92b5a601288d379afe466b8c2e4062ae8d8c66c71d18561bc9bead9ef50bfad13b128376519d2768b28aa
@@ -0,0 +1,64 @@
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.6.0-node
11
+
12
+ # Specify service dependencies here if necessary
13
+ # CircleCI maintains a library of pre-built images
14
+ # documented at https://circleci.com/docs/2.0/circleci-images/
15
+ # - image: circleci/postgres:9.4
16
+
17
+ working_directory: ~/repo
18
+
19
+ steps:
20
+ - checkout
21
+
22
+ # Download and cache dependencies
23
+ - restore_cache:
24
+ keys:
25
+ - v1-dependencies-{{ checksum "behaves.gemspec" }}-{{ checksum "Gemfile" }}
26
+
27
+ - run:
28
+ name: Configure Bundler
29
+ command: |
30
+ echo 'export BUNDLER_VERSION=$(cat Gemfile.lock | tail -1 | tr -d " ")' >> $BASH_ENV
31
+ source $BASH_ENV
32
+ gem install bundler
33
+
34
+ - run:
35
+ name: Install dependencies
36
+ command: |
37
+ bundle install --jobs=4 --retry=3 --path vendor/bundle
38
+
39
+ - save_cache:
40
+ paths:
41
+ - ./vendor/bundle
42
+ key: v1-dependencies-{{ checksum "Gemfile.lock" }}
43
+
44
+ # run tests!
45
+ - run:
46
+ name: Run tests
47
+ command: |
48
+ mkdir /tmp/test-results
49
+ TEST_FILES="$(circleci tests glob "spec/**/*_spec.rb" | \
50
+ circleci tests split --split-by=timings)"
51
+
52
+ bundle exec rspec \
53
+ --format progress \
54
+ --format RspecJunitFormatter \
55
+ --out /tmp/test-results/rspec.xml \
56
+ --format progress \
57
+ $TEST_FILES
58
+
59
+ # collect reports
60
+ - store_test_results:
61
+ path: /tmp/test-results
62
+ - store_artifacts:
63
+ path: /tmp/test-results
64
+ destination: test-results
data/Gemfile.lock CHANGED
@@ -12,7 +12,7 @@ GEM
12
12
  pry (0.12.2)
13
13
  coderay (~> 1.1.0)
14
14
  method_source (~> 0.9.0)
15
- rake (10.4.2)
15
+ rake (12.3.2)
16
16
  rspec (3.8.0)
17
17
  rspec-core (~> 3.8.0)
18
18
  rspec-expectations (~> 3.8.0)
@@ -26,16 +26,19 @@ GEM
26
26
  diff-lcs (>= 1.2.0, < 2.0)
27
27
  rspec-support (~> 3.8.0)
28
28
  rspec-support (3.8.0)
29
+ rspec_junit_formatter (0.4.1)
30
+ rspec-core (>= 2, < 4, != 2.12.0)
29
31
 
30
32
  PLATFORMS
31
33
  ruby
32
34
 
33
35
  DEPENDENCIES
34
36
  behaves!
35
- bundler (~> 1.17)
37
+ bundler (~> 2.0)
36
38
  pry
37
- rake (~> 10.0)
39
+ rake (~> 12.3)
38
40
  rspec (~> 3.0)
41
+ rspec_junit_formatter
39
42
 
40
43
  BUNDLED WITH
41
- 1.17.1
44
+ 2.0.1
data/README.md CHANGED
@@ -98,7 +98,7 @@ class Dog
98
98
  end
99
99
  ```
100
100
 
101
- With `Behaves`, it is not immediately obvious that Dog should behave like a certain class -> `Animal`, and you do not have to implement stub methods on `Animal`.
101
+ With `Behaves`, it is immediately obvious that Dog should behave like a certain class -> `Animal`, and you do not have to implement stub methods on `Animal`.
102
102
 
103
103
  ## Thoughts
104
104
 
data/behaves.gemspec CHANGED
@@ -24,7 +24,8 @@ Gem::Specification.new do |spec|
24
24
  spec.require_paths = ["lib"]
25
25
 
26
26
  spec.add_development_dependency "pry"
27
- spec.add_development_dependency "bundler", "~> 1.17"
28
- spec.add_development_dependency "rake", "~> 10.0"
27
+ spec.add_development_dependency "rake", "~> 12.3"
28
+ spec.add_development_dependency "bundler", "~> 2.0"
29
29
  spec.add_development_dependency "rspec", "~> 3.0"
30
+ spec.add_development_dependency 'rspec_junit_formatter' # for CircleCI
30
31
  end
@@ -1,3 +1,3 @@
1
1
  module Behaves
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
data/lib/behaves.rb CHANGED
@@ -1,4 +1,5 @@
1
- require "behaves/version"
1
+ require 'behaves/version'
2
+ require 'set'
2
3
 
3
4
  module Behaves
4
5
  def implements(*methods)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: behaves
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Edison Yap
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-06-07 00:00:00.000000000 Z
11
+ date: 2019-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -25,33 +25,33 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: bundler
28
+ name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.17'
33
+ version: '12.3'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.17'
40
+ version: '12.3'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rake
42
+ name: bundler
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
47
+ version: '2.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '10.0'
54
+ version: '2.0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '3.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rspec_junit_formatter
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  description: Adds a way to define behaviors and contracts betweet your code at compile-time
70
84
  instead of at run-time, so you can be sure your code adheres to a certain behavior
71
85
  before it hits production.
@@ -75,6 +89,7 @@ executables: []
75
89
  extensions: []
76
90
  extra_rdoc_files: []
77
91
  files:
92
+ - ".circleci/config.yml"
78
93
  - ".gitignore"
79
94
  - ".rspec"
80
95
  - ".travis.yml"
@@ -108,8 +123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
123
  - !ruby/object:Gem::Version
109
124
  version: '0'
110
125
  requirements: []
111
- rubyforge_project:
112
- rubygems_version: 2.6.14
126
+ rubygems_version: 3.0.3
113
127
  signing_key:
114
128
  specification_version: 4
115
129
  summary: Define behaviors and contracts between your code.