dm-validations 0.10.1 → 0.10.2
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.
- data/Rakefile +23 -18
- data/VERSION +1 -0
- data/dm-validations.gemspec +188 -0
- data/lib/dm-validations.rb +25 -75
- data/lib/dm-validations/auto_validate.rb +7 -7
- data/lib/dm-validations/contextual_validators.rb +4 -18
- data/lib/dm-validations/exceptions.rb +3 -1
- data/lib/dm-validations/support/context.rb +40 -1
- data/lib/dm-validations/validation_errors.rb +2 -13
- data/lib/dm-validations/validators/absent_field_validator.rb +2 -2
- data/lib/dm-validations/validators/acceptance_validator.rb +14 -16
- data/lib/dm-validations/validators/confirmation_validator.rb +17 -15
- data/lib/dm-validations/validators/format_validator.rb +18 -11
- data/lib/dm-validations/validators/generic_validator.rb +45 -15
- data/lib/dm-validations/validators/length_validator.rb +2 -11
- data/lib/dm-validations/validators/method_validator.rb +2 -2
- data/lib/dm-validations/validators/numeric_validator.rb +8 -6
- data/lib/dm-validations/validators/primitive_validator.rb +1 -1
- data/lib/dm-validations/validators/uniqueness_validator.rb +13 -9
- data/lib/dm-validations/validators/within_validator.rb +4 -3
- data/spec/fixtures/basketball_player.rb +0 -3
- data/spec/fixtures/bill_of_landing.rb +1 -1
- data/spec/fixtures/city.rb +0 -1
- data/spec/fixtures/company.rb +1 -3
- data/spec/fixtures/corporate_world.rb +0 -6
- data/spec/fixtures/country.rb +0 -1
- data/spec/fixtures/event.rb +1 -1
- data/spec/fixtures/page.rb +2 -2
- data/spec/fixtures/reservation.rb +1 -1
- data/spec/fixtures/scm_operation.rb +0 -8
- data/spec/integration/absent_field_validator/absent_field_validator_spec.rb +6 -2
- data/spec/integration/acceptance_validator/acceptance_validator_spec.rb +36 -36
- data/spec/integration/automatic_validation/custom_messages_for_inferred_validation_spec.rb +2 -2
- data/spec/integration/automatic_validation/disabling_inferred_validation_spec.rb +4 -4
- data/spec/integration/automatic_validation/inferred_boolean_properties_validation_spec.rb +2 -2
- data/spec/integration/automatic_validation/inferred_float_property_validation_spec.rb +2 -0
- data/spec/integration/automatic_validation/inferred_format_validation_spec.rb +3 -1
- data/spec/integration/automatic_validation/inferred_integer_properties_validation_spec.rb +2 -0
- data/spec/integration/automatic_validation/inferred_length_validation_spec.rb +6 -2
- data/spec/integration/automatic_validation/inferred_presence_validation_spec.rb +8 -4
- data/spec/integration/automatic_validation/inferred_primitive_validation_spec.rb +3 -1
- data/spec/integration/automatic_validation/spec_helper.rb +6 -6
- data/spec/integration/block_validator/block_validator_spec.rb +1 -1
- data/spec/integration/conditional_validation/if_condition_spec.rb +3 -1
- data/spec/integration/confirmation_validator/confirmation_validator_spec.rb +3 -1
- data/spec/integration/datamapper_models/association_validation_spec.rb +4 -1
- data/spec/integration/datamapper_models/inheritance_spec.rb +6 -2
- data/spec/integration/duplicated_validations/duplicated_validations_spec.rb +3 -1
- data/spec/integration/format_validator/email_format_validator_spec.rb +5 -1
- data/spec/integration/format_validator/format_validator_spec.rb +5 -1
- data/spec/integration/format_validator/regexp_validator_spec.rb +5 -1
- data/spec/integration/format_validator/url_format_validator_spec.rb +8 -4
- data/spec/integration/length_validator/default_value_spec.rb +4 -2
- data/spec/integration/length_validator/equality_spec.rb +3 -1
- data/spec/integration/length_validator/error_message_spec.rb +3 -1
- data/spec/integration/length_validator/maximum_spec.rb +3 -1
- data/spec/integration/length_validator/minimum_spec.rb +3 -1
- data/spec/integration/length_validator/range_spec.rb +3 -1
- data/spec/integration/method_validator/method_validator_spec.rb +3 -1
- data/spec/integration/numeric_validator/equality_with_float_type_spec.rb +5 -1
- data/spec/integration/numeric_validator/equality_with_integer_type_spec.rb +5 -1
- data/spec/integration/numeric_validator/float_type_spec.rb +3 -1
- data/spec/integration/numeric_validator/gt_with_float_type_spec.rb +3 -1
- data/spec/integration/numeric_validator/gte_with_float_type_spec.rb +3 -1
- data/spec/integration/numeric_validator/integer_only_true_spec.rb +11 -9
- data/spec/integration/numeric_validator/integer_type_spec.rb +10 -8
- data/spec/integration/numeric_validator/lt_with_float_type_spec.rb +3 -1
- data/spec/integration/numeric_validator/lte_with_float_type_spec.rb +3 -1
- data/spec/integration/primitive_validator/primitive_validator_spec.rb +3 -1
- data/spec/integration/pure_ruby_objects/plain_old_ruby_object_validation_spec.rb +6 -6
- data/spec/integration/required_field_validator/association_spec.rb +9 -4
- data/spec/integration/required_field_validator/boolean_type_value_spec.rb +24 -18
- data/spec/integration/required_field_validator/date_type_value_spec.rb +21 -19
- data/spec/integration/required_field_validator/datetime_type_value_spec.rb +21 -19
- data/spec/integration/required_field_validator/float_type_value_spec.rb +21 -19
- data/spec/integration/required_field_validator/integer_type_value_spec.rb +17 -15
- data/spec/integration/required_field_validator/shared_examples.rb +5 -3
- data/spec/integration/required_field_validator/string_type_value_spec.rb +20 -16
- data/spec/integration/required_field_validator/text_type_value_spec.rb +10 -6
- data/spec/integration/uniqueness_validator/uniqueness_validator_spec.rb +23 -25
- data/spec/integration/within_validator/within_validator_spec.rb +7 -3
- data/spec/public/resource_spec.rb +5 -6
- data/spec/rcov.opts +6 -0
- data/spec/spec.opts +2 -0
- data/spec/unit/contextual_validators/emptiness_spec.rb +1 -1
- data/spec/unit/contextual_validators/execution_spec.rb +9 -16
- data/spec/unit/generic_validator/equality_operator_spec.rb +3 -3
- data/spec/unit/validation_errors/adding_spec.rb +1 -1
- data/spec/unit/validation_errors/emptiness_spec.rb +1 -1
- data/spec/unit/validation_errors/enumerable_spec.rb +1 -1
- data/tasks/ci.rake +1 -0
- data/tasks/metrics.rake +36 -0
- data/tasks/spec.rake +41 -0
- data/tasks/yard.rake +9 -0
- data/tasks/yardstick.rake +19 -0
- metadata +36 -18
- data/History.rdoc +0 -45
- data/Manifest.txt +0 -139
- data/TODO +0 -16
- data/lib/dm-validations/version.rb +0 -5
- data/tasks/install.rb +0 -13
- data/tasks/spec.rb +0 -25
@@ -22,18 +22,20 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
22
22
|
|
23
23
|
validates_present :at
|
24
24
|
end
|
25
|
-
ScheduledOperation.auto_migrate!
|
26
25
|
|
26
|
+
describe 'ScheduledOperation' do
|
27
|
+
before :all do
|
28
|
+
ScheduledOperation.auto_migrate!
|
29
|
+
end
|
27
30
|
|
28
|
-
|
29
|
-
before :each do
|
31
|
+
before do
|
30
32
|
@operation = ScheduledOperation.new(:at => DateTime.civil(2008, 06, 07, 15, 00, 00))
|
31
33
|
@operation.should be_valid
|
32
34
|
end
|
33
35
|
|
34
36
|
|
35
37
|
describe "with on = nil" do
|
36
|
-
before
|
38
|
+
before do
|
37
39
|
@operation.at = nil
|
38
40
|
end
|
39
41
|
|
@@ -46,11 +48,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
46
48
|
@operation.at = Date.new(2008, 12, 31)
|
47
49
|
@operation.should be_valid
|
48
50
|
end
|
49
|
-
end
|
51
|
+
end
|
50
52
|
|
51
53
|
|
52
54
|
describe "with on = valid date" do
|
53
|
-
before
|
55
|
+
before do
|
54
56
|
@operation.at = 0.0
|
55
57
|
end
|
56
58
|
|
@@ -58,12 +60,12 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
58
60
|
# yes, presence validator does not care
|
59
61
|
@operation.should be_valid
|
60
62
|
end
|
61
|
-
end
|
63
|
+
end
|
62
64
|
|
63
65
|
|
64
66
|
|
65
67
|
describe "with on = 0" do
|
66
|
-
before
|
68
|
+
before do
|
67
69
|
@operation.at = 0
|
68
70
|
end
|
69
71
|
|
@@ -71,34 +73,34 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
71
73
|
# yes, presence validator does not care
|
72
74
|
@operation.should be_valid
|
73
75
|
end
|
74
|
-
end
|
76
|
+
end
|
75
77
|
|
76
78
|
|
77
79
|
|
78
80
|
describe "with on = 100" do
|
79
|
-
before
|
81
|
+
before do
|
80
82
|
@operation.at = 100
|
81
83
|
end
|
82
84
|
|
83
85
|
it "IS valid" do
|
84
86
|
@operation.should be_valid
|
85
87
|
end
|
86
|
-
end
|
88
|
+
end
|
87
89
|
|
88
90
|
|
89
91
|
describe "with on = 100.0" do
|
90
|
-
before
|
92
|
+
before do
|
91
93
|
@operation.at = 100.0
|
92
94
|
end
|
93
95
|
|
94
96
|
it "IS valid" do
|
95
97
|
@operation.should be_valid
|
96
98
|
end
|
97
|
-
end
|
99
|
+
end
|
98
100
|
|
99
101
|
|
100
102
|
describe "with on = -1100" do
|
101
|
-
before
|
103
|
+
before do
|
102
104
|
# presence validator does not care
|
103
105
|
@operation.at = -1100
|
104
106
|
end
|
@@ -106,11 +108,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
106
108
|
it "IS valid" do
|
107
109
|
@operation.should be_valid
|
108
110
|
end
|
109
|
-
end
|
111
|
+
end
|
110
112
|
|
111
113
|
|
112
114
|
describe "with on = -1100.5" do
|
113
|
-
before
|
115
|
+
before do
|
114
116
|
# presence validator does not care
|
115
117
|
@operation.at = -1100.5
|
116
118
|
end
|
@@ -118,6 +120,6 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
118
120
|
it "IS valid" do
|
119
121
|
@operation.should be_valid
|
120
122
|
end
|
121
|
-
end
|
122
|
-
end
|
123
|
-
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
end
|
@@ -27,17 +27,19 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
27
27
|
|
28
28
|
validates_present :percent
|
29
29
|
end
|
30
|
-
CpuConsumption.auto_migrate!
|
31
30
|
|
31
|
+
describe 'CpuConsumption' do
|
32
|
+
before :all do
|
33
|
+
CpuConsumption.auto_migrate!
|
34
|
+
end
|
32
35
|
|
33
|
-
|
34
|
-
before :each do
|
36
|
+
before do
|
35
37
|
@metric = CpuConsumption.new(:percent => 20.0)
|
36
38
|
@metric.should be_valid
|
37
39
|
end
|
38
40
|
|
39
41
|
describe "with percentage = 0.0" do
|
40
|
-
before
|
42
|
+
before do
|
41
43
|
@metric.percent = 0.0
|
42
44
|
end
|
43
45
|
|
@@ -45,12 +47,12 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
45
47
|
# yes, presence validator does not care
|
46
48
|
@metric.should be_valid
|
47
49
|
end
|
48
|
-
end
|
50
|
+
end
|
49
51
|
|
50
52
|
|
51
53
|
|
52
54
|
describe "with percentage = 0" do
|
53
|
-
before
|
55
|
+
before do
|
54
56
|
@metric.percent = 0
|
55
57
|
end
|
56
58
|
|
@@ -58,34 +60,34 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
58
60
|
# yes, presence validator does not care
|
59
61
|
@metric.should be_valid
|
60
62
|
end
|
61
|
-
end
|
63
|
+
end
|
62
64
|
|
63
65
|
|
64
66
|
|
65
67
|
describe "with percentage = 100" do
|
66
|
-
before
|
68
|
+
before do
|
67
69
|
@metric.percent = 100
|
68
70
|
end
|
69
71
|
|
70
72
|
it "IS valid" do
|
71
73
|
@metric.should be_valid
|
72
74
|
end
|
73
|
-
end
|
75
|
+
end
|
74
76
|
|
75
77
|
|
76
78
|
describe "with percentage = 100.0" do
|
77
|
-
before
|
79
|
+
before do
|
78
80
|
@metric.percent = 100.0
|
79
81
|
end
|
80
82
|
|
81
83
|
it "IS valid" do
|
82
84
|
@metric.should be_valid
|
83
85
|
end
|
84
|
-
end
|
86
|
+
end
|
85
87
|
|
86
88
|
|
87
89
|
describe "with percentage = -1100" do
|
88
|
-
before
|
90
|
+
before do
|
89
91
|
# presence validator does not care
|
90
92
|
@metric.percent = -1100
|
91
93
|
end
|
@@ -93,11 +95,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
93
95
|
it "IS valid" do
|
94
96
|
@metric.should be_valid
|
95
97
|
end
|
96
|
-
end
|
98
|
+
end
|
97
99
|
|
98
100
|
|
99
101
|
describe "with percentage = -1100.5" do
|
100
|
-
before
|
102
|
+
before do
|
101
103
|
# presence validator does not care
|
102
104
|
@metric.percent = -1100.5
|
103
105
|
end
|
@@ -105,11 +107,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
105
107
|
it "IS valid" do
|
106
108
|
@metric.should be_valid
|
107
109
|
end
|
108
|
-
end
|
110
|
+
end
|
109
111
|
|
110
112
|
|
111
113
|
describe "with percentage = nil" do
|
112
|
-
before
|
114
|
+
before do
|
113
115
|
@metric.percent = nil
|
114
116
|
end
|
115
117
|
|
@@ -122,6 +124,6 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
122
124
|
@metric.percent = 100
|
123
125
|
@metric.should be_valid
|
124
126
|
end
|
125
|
-
end
|
126
|
-
end
|
127
|
-
end
|
127
|
+
end
|
128
|
+
end
|
129
|
+
end
|
@@ -20,17 +20,19 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
20
20
|
|
21
21
|
validates_present :local_repo_revision_num
|
22
22
|
end
|
23
|
-
HgCommit.auto_migrate!
|
24
23
|
|
24
|
+
describe 'HgCommit' do
|
25
|
+
before :all do
|
26
|
+
HgCommit.auto_migrate!
|
27
|
+
end
|
25
28
|
|
26
|
-
|
27
|
-
before :each do
|
29
|
+
before do
|
28
30
|
@operation = HgCommit.new(:local_repo_revision_num => 90, :name => "ci")
|
29
31
|
@operation.should be_valid
|
30
32
|
end
|
31
33
|
|
32
34
|
describe "with local revision number = 0" do
|
33
|
-
before
|
35
|
+
before do
|
34
36
|
@operation.local_repo_revision_num = 0
|
35
37
|
end
|
36
38
|
|
@@ -38,34 +40,34 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
38
40
|
# yes, presence validator does not care
|
39
41
|
@operation.should be_valid
|
40
42
|
end
|
41
|
-
end
|
43
|
+
end
|
42
44
|
|
43
45
|
|
44
46
|
|
45
47
|
describe "with local revision number = 100" do
|
46
|
-
before
|
48
|
+
before do
|
47
49
|
@operation.local_repo_revision_num = 100
|
48
50
|
end
|
49
51
|
|
50
52
|
it "IS valid" do
|
51
53
|
@operation.should be_valid
|
52
54
|
end
|
53
|
-
end
|
55
|
+
end
|
54
56
|
|
55
57
|
|
56
58
|
describe "with local revision number = 100.0 (float!)" do
|
57
|
-
before
|
59
|
+
before do
|
58
60
|
@operation.local_repo_revision_num = 100.0
|
59
61
|
end
|
60
62
|
|
61
63
|
it "IS valid" do
|
62
64
|
@operation.should be_valid
|
63
65
|
end
|
64
|
-
end
|
66
|
+
end
|
65
67
|
|
66
68
|
|
67
69
|
describe "with local revision number = -1100" do
|
68
|
-
before
|
70
|
+
before do
|
69
71
|
# presence validator does not care
|
70
72
|
@operation.local_repo_revision_num = -1100
|
71
73
|
end
|
@@ -73,11 +75,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
73
75
|
it "IS valid" do
|
74
76
|
@operation.should be_valid
|
75
77
|
end
|
76
|
-
end
|
78
|
+
end
|
77
79
|
|
78
80
|
|
79
81
|
describe "with local revision number = nil" do
|
80
|
-
before
|
82
|
+
before do
|
81
83
|
@operation.local_repo_revision_num = nil
|
82
84
|
end
|
83
85
|
|
@@ -90,6 +92,6 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
90
92
|
@operation.local_repo_revision_num = 100
|
91
93
|
@operation.should be_valid
|
92
94
|
end
|
93
|
-
end
|
94
|
-
end
|
95
|
-
end
|
95
|
+
end
|
96
|
+
end
|
97
|
+
end
|
@@ -1,10 +1,12 @@
|
|
1
|
-
describe GitOperation do
|
2
|
-
before
|
1
|
+
describe 'GitOperation' do
|
2
|
+
before do
|
3
|
+
GitOperation.auto_migrate!
|
4
|
+
|
3
5
|
@operation = GitOperation.new
|
4
6
|
end
|
5
7
|
|
6
8
|
describe "unnamed SCM operation", :shared => true do
|
7
|
-
before
|
9
|
+
before do
|
8
10
|
@operation.name = nil
|
9
11
|
@operation.valid?
|
10
12
|
end
|
@@ -4,15 +4,19 @@ require 'integration/required_field_validator/spec_helper'
|
|
4
4
|
if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
5
5
|
# keep in mind any ScmOperation has a default value for brand property
|
6
6
|
# so it is used
|
7
|
-
describe GitOperation do
|
8
|
-
before :
|
7
|
+
describe 'GitOperation' do
|
8
|
+
before :all do
|
9
|
+
GitOperation.auto_migrate!
|
10
|
+
end
|
11
|
+
|
12
|
+
before do
|
9
13
|
@operation = GitOperation.new(:network_connection => true,
|
10
14
|
:clean_working_copy => true,
|
11
15
|
:message => "I did it! I did it!! Hell yeah!!!")
|
12
16
|
end
|
13
17
|
|
14
18
|
describe "without explicitly specified committer name" do
|
15
|
-
before
|
19
|
+
before do
|
16
20
|
# no specific actions for this case! yay!
|
17
21
|
end
|
18
22
|
|
@@ -32,10 +36,10 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
32
36
|
# tested in
|
33
37
|
@operation.committer_name.should == "Just another Ruby hacker"
|
34
38
|
end
|
35
|
-
end
|
39
|
+
end
|
36
40
|
|
37
41
|
describe "WITH explicitly specified committer name" do
|
38
|
-
before
|
42
|
+
before do
|
39
43
|
@operation.committer_name = "Core Team Guy"
|
40
44
|
end
|
41
45
|
|
@@ -55,12 +59,12 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
55
59
|
# tested in
|
56
60
|
@operation.committer_name.should == "Core Team Guy"
|
57
61
|
end
|
58
|
-
end
|
62
|
+
end
|
59
63
|
|
60
64
|
|
61
65
|
|
62
66
|
describe "without explicitly specified author name" do
|
63
|
-
before
|
67
|
+
before do
|
64
68
|
# no specific actions for this case! yay!
|
65
69
|
end
|
66
70
|
|
@@ -78,10 +82,10 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
78
82
|
it "has default value set" do
|
79
83
|
@operation.author_name.should == "Just another Ruby hacker"
|
80
84
|
end
|
81
|
-
end
|
85
|
+
end
|
82
86
|
|
83
87
|
describe "WITH explicitly specified author name" do
|
84
|
-
before
|
88
|
+
before do
|
85
89
|
@operation.author_name = "Random contributor"
|
86
90
|
end
|
87
91
|
|
@@ -97,10 +101,10 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
97
101
|
it "has value set" do
|
98
102
|
@operation.author_name.should == "Random contributor"
|
99
103
|
end
|
100
|
-
end
|
104
|
+
end
|
101
105
|
|
102
106
|
describe "with empty committer name" do
|
103
|
-
before
|
107
|
+
before do
|
104
108
|
@operation.committer_name = ""
|
105
109
|
end
|
106
110
|
|
@@ -126,11 +130,11 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
126
130
|
it "is not valid in default context" do
|
127
131
|
@operation.should_not be_valid
|
128
132
|
end
|
129
|
-
end
|
133
|
+
end
|
130
134
|
|
131
135
|
|
132
136
|
describe "with empty author name" do
|
133
|
-
before
|
137
|
+
before do
|
134
138
|
@operation.author_name = ""
|
135
139
|
end
|
136
140
|
|
@@ -156,6 +160,6 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
156
160
|
it "is not valid in default context" do
|
157
161
|
@operation.should_not be_valid
|
158
162
|
end
|
159
|
-
end
|
160
|
-
end
|
161
|
-
end
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
@@ -4,15 +4,19 @@ require 'integration/required_field_validator/spec_helper'
|
|
4
4
|
if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
5
5
|
# keep in mind any ScmOperation has a default value for brand property
|
6
6
|
# so it is used
|
7
|
-
describe GitOperation do
|
8
|
-
before :
|
7
|
+
describe 'GitOperation' do
|
8
|
+
before :all do
|
9
|
+
GitOperation.auto_migrate!
|
10
|
+
end
|
11
|
+
|
12
|
+
before do
|
9
13
|
@operation = GitOperation.new(:network_connection => true,
|
10
14
|
:clean_working_copy => true,
|
11
15
|
:message => "I did it! I did it!! Hell yeah!!!")
|
12
16
|
end
|
13
17
|
|
14
18
|
describe "with empty message" do
|
15
|
-
before
|
19
|
+
before do
|
16
20
|
@operation.message = ""
|
17
21
|
end
|
18
22
|
|
@@ -38,6 +42,6 @@ if HAS_SQLITE3 || HAS_MYSQL || HAS_POSTGRES
|
|
38
42
|
it "is not valid in default context" do
|
39
43
|
@operation.should_not be_valid
|
40
44
|
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|