u-service 0.5.0 → 0.6.0

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
2
  SHA256:
3
- metadata.gz: 5726d2ecb67cd07b309e07b8df1efca7d5b3c1249f494eafd844fb1f09779424
4
- data.tar.gz: 5ae6ec089cba9c0b2e82df8c04179aada1fa973ffb5ce05e9fb90d04de92ce7e
3
+ metadata.gz: e0a881f3a6544fe98f2384ee40522a44e1fcc2011f60fd1e312d1fbb4afee79f
4
+ data.tar.gz: 425f39a6977091d5e9303b9fc86f1c261115737bffc693f929f8cb0dafce43bb
5
5
  SHA512:
6
- metadata.gz: 84e07635d0b6763c90fd3ac17d413a2380eecf7a3b4d050b68483d25e95d7d94815f76c5019b0af360594aea660df2bc5147df8ae130391f5afb32c4857565a0
7
- data.tar.gz: b7e863689304c30d7023b4a65107fd23bbb04804cff0628365d535d1f1c4bd044b0e0dcf11debab688b42e1c6f6042d484fc4fdf599e7832a6d3018305c97ec3
6
+ metadata.gz: cf65966cfd4ef161f07ff5e97e787afd2afe810420223941a574e1eeb0a236b98f0d83a4c391b374ac53391afaef7f2e23a4abbecf7a0b01adf89b125a3ea08a
7
+ data.tar.gz: 2c88814614909b674a64ec4c727c5ecaeb2c42e83fae514ee044c085aa0753862529774d872eace7e2106461366d46a9521c94348f8931ce47fa10ab0b6cca4b
data/.travis.sh ADDED
@@ -0,0 +1,13 @@
1
+ #!/bin/bash
2
+
3
+ bundle exec rake test
4
+
5
+ ruby_v=$(ruby -v)
6
+
7
+ ACTIVEMODEL_VERSION='3.2' bundle update
8
+ ACTIVEMODEL_VERSION='3.2' bundle exec rake test
9
+
10
+ if [[ ! $ruby_v =~ '2.2.0' ]]; then
11
+ ACTIVEMODEL_VERSION='5.2' bundle update
12
+ ACTIVEMODEL_VERSION='5.2' bundle exec rake test
13
+ fi
data/.travis.yml CHANGED
@@ -23,7 +23,7 @@ before_script:
23
23
  - chmod +x ./cc-test-reporter
24
24
  - "./cc-test-reporter before-build"
25
25
 
26
- script: "rake"
26
+ script: "./.travis.sh"
27
27
 
28
28
  after_success:
29
29
  - "./cc-test-reporter after-build -t simplecov"
data/Gemfile CHANGED
@@ -2,9 +2,22 @@ source "https://rubygems.org"
2
2
 
3
3
  git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
4
4
 
5
- # Specify your gem's dependencies in micro-service.gemspec
6
- gemspec
5
+ activemodel_version = ENV.fetch('ACTIVEMODEL_VERSION', '6.1')
6
+
7
+ activemodel = case activemodel_version
8
+ when '3.2' then '3.2.22'
9
+ when '5.2' then '5.2.3'
10
+ end
11
+
12
+ if activemodel_version < '6.1'
13
+ gem 'activemodel', activemodel, require: false
14
+ gem 'activesupport', activemodel, require: false
15
+ end
7
16
 
8
17
  group :test do
18
+ gem 'minitest', activemodel_version < '4.1' ? '~> 4.2' : '~> 5.0'
9
19
  gem 'simplecov', require: false
10
20
  end
21
+
22
+ # Specify your gem's dependencies in micro-service.gemspec
23
+ gemspec
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- u-service (0.5.0)
4
+ u-service (0.6.0)
5
5
  u-attributes (~> 1.1)
6
6
 
7
7
  GEM
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Micro
4
4
  module Service
5
- VERSION = '0.5.0'.freeze
5
+ VERSION = '0.6.0'.freeze
6
6
  end
7
7
  end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'micro/service'
4
+
5
+ module Micro
6
+ class Service::WithValidation < Micro::Service::Base
7
+ include Micro::Attributes::Features::ActiveModelValidations
8
+
9
+ def call
10
+ return Failure(errors: self.errors) unless valid?
11
+
12
+ super
13
+ end
14
+ end
15
+
16
+ class Service::Strict::Validation < Service::WithValidation
17
+ include Micro::Attributes::Features::StrictInitialize
18
+ end
19
+ end
data/lib/u-service.rb ADDED
@@ -0,0 +1,3 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'micro/service'
data/test.sh ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/bash
2
+
3
+ git checkout -- Gemfile.lock
4
+
5
+ source $(dirname $0)/.travis.sh
6
+
7
+ git checkout -- Gemfile.lock
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: u-service
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rodrigo Serradura
@@ -74,6 +74,7 @@ extensions: []
74
74
  extra_rdoc_files: []
75
75
  files:
76
76
  - ".gitignore"
77
+ - ".travis.sh"
77
78
  - ".travis.yml"
78
79
  - CODE_OF_CONDUCT.md
79
80
  - Gemfile
@@ -89,7 +90,9 @@ files:
89
90
  - lib/micro/service/result.rb
90
91
  - lib/micro/service/strict.rb
91
92
  - lib/micro/service/version.rb
92
- - lib/micro/u-service.rb
93
+ - lib/micro/service/with_validation.rb
94
+ - lib/u-service.rb
95
+ - test.sh
93
96
  - u-service.gemspec
94
97
  homepage: https://github.com/serradura/u-service
95
98
  licenses:
@@ -1,3 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'micro/service/version'