unidom-article_number 2.3.3 → 2.3.4
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b24f148994618c534ec06ae430b374bb20ad47a7
|
4
|
+
data.tar.gz: 70c026fb39b7b9d44c4940d40c0839f595adfc28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 644ffbb30fd613ce1fc0af25f567424be8d841504714be6032bfbec9e04a1877be3528fa74bf2f3c8196167a7fa790e028375d95d512e5bf869a9f973c9b0753
|
7
|
+
data.tar.gz: ad827209dd0e5bfa3052cb4804707b32aab55c72cc8c668e9e4013f3b4b54773f6080768c6cc01e316aba055747c61e1c4ea0f0c2b2fdb0543173a86f715e73f
|
@@ -12,11 +12,11 @@ class Unidom::ArticleNumber::Ean13Barcode < Unidom::ArticleNumber::ApplicationRe
|
|
12
12
|
include Unidom::Common::Concerns::ModelExtension
|
13
13
|
include Unidom::ArticleNumber::Concerns::AsBarcode
|
14
14
|
|
15
|
-
validates :code, uniqueness: true,
|
16
|
-
validates :gs1_prefix, presence: true,
|
17
|
-
validates :company_number, presence: true,
|
18
|
-
validates :item_reference, presence: true,
|
19
|
-
validates :check_digit, presence: true,
|
15
|
+
validates :code, uniqueness: true, length: { minimum: 13 }, numericality: { only_integer: true }
|
16
|
+
validates :gs1_prefix, presence: true, length: { is: 3 }, numericality: { only_integer: true }
|
17
|
+
validates :company_number, presence: true, length: { is: 4 }, numericality: { only_integer: true }
|
18
|
+
validates :item_reference, presence: true, length: { is: 5 }, numericality: { only_integer: true }
|
19
|
+
validates :check_digit, presence: true, length: { is: 1 }, numericality: { only_integer: true }
|
20
20
|
|
21
21
|
def code=(code)
|
22
22
|
code = code.to_s
|
@@ -12,8 +12,27 @@ describe Unidom::ArticleNumber::Ean13Barcode, type: :model do
|
|
12
12
|
code: '1234567890123'
|
13
13
|
}
|
14
14
|
|
15
|
+
code_max_length = described_class.columns_hash['code'].limit
|
16
|
+
|
15
17
|
it_behaves_like 'Unidom::Common::Concerns::ModelExtension', model_attributes
|
16
18
|
|
19
|
+
it_behaves_like 'validates', model_attributes, :code,
|
20
|
+
{ } => 0,
|
21
|
+
{ code: nil } => 3,
|
22
|
+
{ code: '' } => 3,
|
23
|
+
{ code: '1' } => 1,
|
24
|
+
{ code: 'A' } => 2,
|
25
|
+
{ code: '11' } => 1,
|
26
|
+
{ code: 'AA' } => 2,
|
27
|
+
{ code: '111' } => 1,
|
28
|
+
{ code: 'AAA' } => 2,
|
29
|
+
{ code: '1'*(code_max_length-1) } => 1,
|
30
|
+
{ code: 'A'*(code_max_length-1) } => 2,
|
31
|
+
{ code: '1'*code_max_length } => 0,
|
32
|
+
{ code: 'A'*code_max_length } => 1,
|
33
|
+
{ code: '1'*(code_max_length+1) } => 1,
|
34
|
+
{ code: 'A'*(code_max_length+1) } => 2
|
35
|
+
|
17
36
|
end
|
18
37
|
|
19
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: unidom-article_number
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.3.
|
4
|
+
version: 2.3.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Topbit Du
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-03-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: unidom-common
|