unidom-article_number 2.3.4 → 2.3.5
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: f230184a9348c0a6540ff87054d0e237210f44a9
|
4
|
+
data.tar.gz: 1680b0164bcdf2569392dcac358db9c414c47092
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ec8c735447b02c849a1b36479b895861ad88fd01e0f582df8e3586c455a7306c4b9f6eba335c53d454dc4204fa9758a204bc3caeabb1ea17784bc4064b7dac7
|
7
|
+
data.tar.gz: 34161d493bbf609110bcab81f9184b55bbaea889adc5294c141abec00a853f90eb27a6bc99523cd387893121ac9bc49a361e6d5466ccdeef61f219b1e41dac6e
|
@@ -13,10 +13,10 @@ class Unidom::ArticleNumber::Ean13Barcode < Unidom::ArticleNumber::ApplicationRe
|
|
13
13
|
include Unidom::ArticleNumber::Concerns::AsBarcode
|
14
14
|
|
15
15
|
validates :code, uniqueness: true, length: { minimum: 13 }, numericality: { only_integer: true }
|
16
|
-
validates :gs1_prefix, presence:
|
17
|
-
validates :company_number, presence:
|
18
|
-
validates :item_reference, presence:
|
19
|
-
validates :check_digit, presence:
|
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
|
@@ -11,10 +11,10 @@ class Unidom::ArticleNumber::Ean8Barcode < Unidom::ArticleNumber::ApplicationRec
|
|
11
11
|
include Unidom::Common::Concerns::ModelExtension
|
12
12
|
include Unidom::ArticleNumber::Concerns::AsBarcode
|
13
13
|
|
14
|
-
validates :code, uniqueness: true,
|
15
|
-
validates :gs1_prefix, presence:
|
16
|
-
validates :item_reference, presence:
|
17
|
-
validates :check_digit, presence:
|
14
|
+
validates :code, uniqueness: true, length: { minimum: 8 }, numericality: { only_integer: true }
|
15
|
+
validates :gs1_prefix, presence: true, length: { is: 3 }, numericality: { only_integer: true }
|
16
|
+
validates :item_reference, presence: true, length: { is: 4 }, numericality: { only_integer: true }
|
17
|
+
validates :check_digit, presence: true, length: { is: 1 }, numericality: { only_integer: true }
|
18
18
|
|
19
19
|
def code=(code)
|
20
20
|
code = code.to_s
|
@@ -12,8 +12,27 @@ describe Unidom::ArticleNumber::Ean8Barcode, type: :model do
|
|
12
12
|
code: '12345678'
|
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.5
|
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-03-
|
11
|
+
date: 2017-03-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: unidom-common
|