porolog 1.0.2 → 1.0.3

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.
@@ -11,7 +11,7 @@ describe 'Porolog' do
11
11
 
12
12
  describe 'Variable' do
13
13
 
14
- let(:predicate1) { Predicate.new :generic }
14
+ let(:predicate1) { Porolog::Predicate.new :generic }
15
15
  let(:arguments1) { predicate1.arguments(:m,:n) }
16
16
  let(:goal1) { arguments1.goal }
17
17
  let(:goal2) { arguments1.goal }
@@ -24,10 +24,10 @@ describe 'Porolog' do
24
24
  describe '.new' do
25
25
 
26
26
  it 'should create a new variable in a goal' do
27
- variable = Variable.new :x, goal1
27
+ variable = Porolog::Variable.new :x, goal1
28
28
 
29
- assert_instance_of Variable, variable
30
- assert_Goal_variables goal1, { m: nil, n: nil, x: nil }, [
29
+ assert_instance_of Porolog::Variable, variable
30
+ assert_Goal_variables goal1, { m: nil, n: nil, x: nil }, [
31
31
  'Goal1.:m',
32
32
  'Goal1.:n',
33
33
  'Goal1.:x',
@@ -39,20 +39,20 @@ describe 'Porolog' do
39
39
  describe '#initialize' do
40
40
 
41
41
  it 'should initialize name, goal, instantiations, and values' do
42
- variable = Variable.new :x, goal1
42
+ variable = Porolog::Variable.new :x, goal1
43
43
 
44
44
  assert_Variable variable, :x, goal1, [], []
45
45
  end
46
46
 
47
47
  it 'should convert a string name to a symbol name' do
48
- variable = Variable.new 's', goal1
48
+ variable = Porolog::Variable.new 's', goal1
49
49
 
50
50
  assert_equal :s, variable.name
51
51
  end
52
52
 
53
53
  it 'should convert a variable name to its name' do
54
- other = Variable.new 'other', goal1
55
- variable = Variable.new other, goal1
54
+ other = Porolog::Variable.new 'other', goal1
55
+ variable = Porolog::Variable.new other, goal1
56
56
 
57
57
  assert_equal :other, variable.name
58
58
  assert_Goal_variables goal1, { m: nil, n: nil, other: nil }, [
@@ -63,8 +63,8 @@ describe 'Porolog' do
63
63
  end
64
64
 
65
65
  it 'should convert a value name to its name and initialize its values' do
66
- value = Value.new 'other', goal1
67
- variable = Variable.new value, goal1
66
+ value = Porolog::Value.new 'other', goal1
67
+ variable = Porolog::Variable.new value, goal1
68
68
 
69
69
  assert_equal 'other', variable.name
70
70
  assert_equal [value], variable.values
@@ -74,7 +74,7 @@ describe 'Porolog' do
74
74
 
75
75
  it 'should convert other types as a name to its value' do
76
76
  # TECH-DEBT: Not super sure about this spec!
77
- variable = Variable.new 0.875, goal1
77
+ variable = Porolog::Variable.new 0.875, goal1
78
78
 
79
79
  assert_equal '0.875', variable.name
80
80
  assert_instance_of Array, variable.values
@@ -85,13 +85,13 @@ describe 'Porolog' do
85
85
  end
86
86
 
87
87
  it 'should raise an error when a goal is not provided' do
88
- assert_raises Variable::GoalError do
89
- Variable.new :x, 'goal'
88
+ assert_raises Porolog::Variable::GoalError do
89
+ Porolog::Variable.new :x, 'goal'
90
90
  end
91
91
  end
92
92
 
93
93
  it 'should declare the variable in the goal' do
94
- Variable.new :x, goal1
94
+ Porolog::Variable.new :x, goal1
95
95
 
96
96
  assert_Goal_variables goal1, { m: nil, n: nil, x: nil }, [
97
97
  'Goal1.:m',
@@ -105,7 +105,7 @@ describe 'Porolog' do
105
105
  describe '#to_sym' do
106
106
 
107
107
  it 'should convert a variable to a Symbol' do
108
- variable = Variable.new 'v', goal1
108
+ variable = Porolog::Variable.new 'v', goal1
109
109
 
110
110
  assert_equal :v, variable.to_sym
111
111
  end
@@ -115,13 +115,13 @@ describe 'Porolog' do
115
115
  describe '#type' do
116
116
 
117
117
  it 'should return variable from uninstantiated variables' do
118
- variable = Variable.new 'v', goal1
118
+ variable = Porolog::Variable.new 'v', goal1
119
119
 
120
120
  assert_equal :variable, variable.type
121
121
  end
122
122
 
123
123
  it 'should return variable from instantiated variables' do
124
- variable = Variable.new 'v', goal1
124
+ variable = Porolog::Variable.new 'v', goal1
125
125
  variable.instantiate 'string value'
126
126
 
127
127
  assert_equal :variable, variable.type
@@ -132,7 +132,7 @@ describe 'Porolog' do
132
132
  describe '#inspect' do
133
133
 
134
134
  it 'should show the goal and name' do
135
- variable = Variable.new 'v', goal1
135
+ variable = Porolog::Variable.new 'v', goal1
136
136
 
137
137
  assert_equal 'Goal1.:v', variable.inspect
138
138
  end
@@ -142,15 +142,15 @@ describe 'Porolog' do
142
142
  describe '#inspect_with_instantiations' do
143
143
 
144
144
  it 'should show a variable without instantiations as inspect does' do
145
- variable = Variable.new :x, goal1
145
+ variable = Porolog::Variable.new :x, goal1
146
146
 
147
147
  assert_equal variable.inspect, variable.inspect_with_instantiations
148
148
  end
149
149
 
150
150
  it 'should return all instantiations of a variable with nested instantiations' do
151
- variable1 = Variable.new :x, goal1
152
- variable2 = Variable.new :y, goal1
153
- variable3 = Variable.new :z, goal1
151
+ variable1 = Porolog::Variable.new :x, goal1
152
+ variable2 = Porolog::Variable.new :y, goal1
153
+ variable3 = Porolog::Variable.new :z, goal1
154
154
 
155
155
  variable1.instantiate variable2
156
156
  variable2.instantiate variable3
@@ -167,16 +167,16 @@ describe 'Porolog' do
167
167
  assert_equal 2, variable2.instantiations.size
168
168
  assert_equal 1, variable3.instantiations.size
169
169
 
170
- assert_instance_of Instantiation, variable1.instantiations.first
170
+ assert_instance_of Porolog::Instantiation, variable1.instantiations.first
171
171
  assert_equal 'Goal1.:x = Goal1.:y', variable1.instantiations.first.inspect
172
172
 
173
- assert_instance_of Instantiation, variable2.instantiations[0]
173
+ assert_instance_of Porolog::Instantiation, variable2.instantiations[0]
174
174
  assert_equal 'Goal1.:x = Goal1.:y', variable2.instantiations[0].inspect
175
175
 
176
- assert_instance_of Instantiation, variable2.instantiations[1]
176
+ assert_instance_of Porolog::Instantiation, variable2.instantiations[1]
177
177
  assert_equal 'Goal1.:y = Goal1.:z', variable2.instantiations[1].inspect
178
178
 
179
- assert_instance_of Instantiation, variable3.instantiations.first
179
+ assert_instance_of Porolog::Instantiation, variable3.instantiations.first
180
180
  assert_equal 'Goal1.:y = Goal1.:z', variable3.instantiations.first.inspect
181
181
 
182
182
  assert_equal variable1.instantiations + variable3.instantiations, variable2.instantiations
@@ -206,8 +206,8 @@ describe 'Porolog' do
206
206
  describe '#value' do
207
207
 
208
208
  it 'should return the variable when no value has been instantiated' do
209
- variable1 = Variable.new :x, goal1
210
- variable2 = Variable.new :y, goal1
209
+ variable1 = Porolog::Variable.new :x, goal1
210
+ variable2 = Porolog::Variable.new :y, goal1
211
211
 
212
212
  variable1.instantiate variable2
213
213
 
@@ -215,9 +215,9 @@ describe 'Porolog' do
215
215
  end
216
216
 
217
217
  it 'should return the indirect value through instantiations' do
218
- variable1 = Variable.new :x, goal1
219
- variable2 = Variable.new :y, goal1
220
- value = Value.new [1,2,3], goal1
218
+ variable1 = Porolog::Variable.new :x, goal1
219
+ variable2 = Porolog::Variable.new :y, goal1
220
+ value = Porolog::Value.new [1,2,3], goal1
221
221
 
222
222
  variable1.instantiate variable2
223
223
  variable2.instantiate value
@@ -229,9 +229,9 @@ describe 'Porolog' do
229
229
  assert_Goal goal1, :generic, [:m, :n]
230
230
 
231
231
  # -- Create Variables --
232
- variable1 = Variable.new :x, goal1
233
- variable2 = Variable.new :y, goal1
234
- variable3 = Variable.new :z, goal1
232
+ variable1 = Porolog::Variable.new :x, goal1
233
+ variable2 = Porolog::Variable.new :y, goal1
234
+ variable3 = Porolog::Variable.new :z, goal1
235
235
 
236
236
  assert_Goal_variables goal1, { m: nil, n: nil, x: nil, y: nil, z: nil }, [
237
237
  'Goal1.:m',
@@ -245,8 +245,8 @@ describe 'Porolog' do
245
245
  headtail = goal1.variablise(:m/:n)
246
246
  assert_Array_with_Tail headtail, [goal1.variable(:m)], '*Goal1.:n'
247
247
 
248
- value1 = Value.new headtail, goal1
249
- value2 = Value.new [1,2,3], goal1
248
+ value1 = Porolog::Value.new headtail, goal1
249
+ value2 = Porolog::Value.new [1,2,3], goal1
250
250
 
251
251
  assert_Value value1, headtail, goal1
252
252
  assert_Value value2, [1,2,3], goal1
@@ -314,9 +314,9 @@ describe 'Porolog' do
314
314
  assert_Goal_variables goal1, {
315
315
  m: nil,
316
316
  n: nil,
317
- x: [nil, UNKNOWN_TAIL],
318
- y: [nil, UNKNOWN_TAIL],
319
- z: [nil, UNKNOWN_TAIL]
317
+ x: [nil, Porolog::UNKNOWN_TAIL],
318
+ y: [nil, Porolog::UNKNOWN_TAIL],
319
+ z: [nil, Porolog::UNKNOWN_TAIL]
320
320
  }, [
321
321
  'Goal1.:m',
322
322
  ' Goal1.:y[:head]',
@@ -398,9 +398,9 @@ describe 'Porolog' do
398
398
  end
399
399
 
400
400
  it 'should not return the indirect value through instantiations after uninstantiating' do
401
- variable1 = Variable.new :x, goal1
402
- variable2 = Variable.new :y, goal1
403
- value = Value.new [1,2,3], goal1
401
+ variable1 = Porolog::Variable.new :x, goal1
402
+ variable2 = Porolog::Variable.new :y, goal1
403
+ value = Porolog::Value.new [1,2,3], goal1
404
404
 
405
405
  variable1.instantiate variable2
406
406
  variable2.instantiate value
@@ -414,12 +414,12 @@ describe 'Porolog' do
414
414
  end
415
415
 
416
416
  it 'should not instantiate multiple unequal values' do
417
- variable1 = Variable.new :x, goal1
418
- variable2 = Variable.new :y, goal2
419
- variable3 = Variable.new :z, goal3
417
+ variable1 = Porolog::Variable.new :x, goal1
418
+ variable2 = Porolog::Variable.new :y, goal2
419
+ variable3 = Porolog::Variable.new :z, goal3
420
420
 
421
- value1 = Value.new [1,2,3], goal2
422
- value2 = Value.new 'word', goal3
421
+ value1 = Porolog::Value.new [1,2,3], goal2
422
+ value2 = Porolog::Value.new 'word', goal3
423
423
 
424
424
  i1 = variable1.instantiate variable2
425
425
  i2 = variable1.instantiate variable3
@@ -458,12 +458,12 @@ describe 'Porolog' do
458
458
  end
459
459
 
460
460
  it 'should not raise an exception when multiple values are equal' do
461
- variable1 = Variable.new :x, goal1
462
- variable2 = Variable.new :y, goal2
463
- variable3 = Variable.new :z, goal3
461
+ variable1 = Porolog::Variable.new :x, goal1
462
+ variable2 = Porolog::Variable.new :y, goal2
463
+ variable3 = Porolog::Variable.new :z, goal3
464
464
 
465
- value1 = Value.new 'word', goal2
466
- value2 = Value.new 'word', goal3
465
+ value1 = Porolog::Value.new 'word', goal2
466
+ value2 = Porolog::Value.new 'word', goal3
467
467
 
468
468
  variable1.instantiate variable2
469
469
  variable1.instantiate variable3
@@ -482,7 +482,7 @@ describe 'Porolog' do
482
482
  end
483
483
 
484
484
  it 'should raise an exception when the variable has multiple different non-array values' do
485
- variable1 = Variable.new :x, goal1
485
+ variable1 = Porolog::Variable.new :x, goal1
486
486
 
487
487
  variable1.values << 1
488
488
  variable1.values << 'one'
@@ -495,7 +495,7 @@ describe 'Porolog' do
495
495
  end
496
496
 
497
497
  it 'should prioritise non-variables over variables' do
498
- variable1 = Variable.new :x, goal1
498
+ variable1 = Porolog::Variable.new :x, goal1
499
499
 
500
500
  assert_equal goal1[:x], variable1.value
501
501
 
@@ -510,50 +510,50 @@ describe 'Porolog' do
510
510
  end
511
511
 
512
512
  it 'should prioritise variables over an unknown array' do
513
- variable1 = Variable.new :x, goal1
513
+ variable1 = Porolog::Variable.new :x, goal1
514
514
 
515
515
  assert_equal goal1[:x], variable1.value
516
516
 
517
- variable1.values << UNKNOWN_ARRAY
517
+ variable1.values << Porolog::UNKNOWN_ARRAY
518
518
 
519
- assert_equal UNKNOWN_ARRAY, variable1.value
519
+ assert_equal Porolog::UNKNOWN_ARRAY, variable1.value
520
520
 
521
521
  variable1.values << :variable1
522
522
  variable1.values << :variable2
523
- variable1.values << UNKNOWN_ARRAY
523
+ variable1.values << Porolog::UNKNOWN_ARRAY
524
524
 
525
525
  assert_equal :variable1, variable1.value
526
526
  end
527
527
 
528
528
  it 'should unify a matching flathead and flattail pair' do
529
- variable1 = Variable.new :x, goal1
529
+ variable1 = Porolog::Variable.new :x, goal1
530
530
 
531
- variable1.values << [1,2,UNKNOWN_TAIL]
532
- variable1.values << [UNKNOWN_TAIL,3,4]
531
+ variable1.values << [1, 2, Porolog::UNKNOWN_TAIL]
532
+ variable1.values << [Porolog::UNKNOWN_TAIL, 3, 4]
533
533
 
534
534
  assert_equal [1,2,3,4], variable1.value
535
535
  end
536
536
 
537
537
  it 'should unify a matching flattail and flathead pair' do
538
- variable1 = Variable.new :x, goal1
538
+ variable1 = Porolog::Variable.new :x, goal1
539
539
 
540
- variable1.values << [UNKNOWN_TAIL,3,4]
541
- variable1.values << [1,2,UNKNOWN_TAIL]
540
+ variable1.values << [Porolog::UNKNOWN_TAIL, 3, 4]
541
+ variable1.values << [1, 2, Porolog::UNKNOWN_TAIL]
542
542
 
543
543
  assert_equal [1,2,3,4], variable1.value
544
544
  end
545
545
 
546
546
  it 'should return nil when the values are incompatible' do
547
- variable1 = Variable.new :x, goal1
547
+ variable1 = Porolog::Variable.new :x, goal1
548
548
 
549
- variable1.values << [1,3,4]
550
- variable1.values << [1,2,UNKNOWN_TAIL]
549
+ variable1.values << [1, 3, 4]
550
+ variable1.values << [1, 2, Porolog::UNKNOWN_TAIL]
551
551
 
552
552
  assert_nil variable1.value
553
553
  end
554
554
 
555
555
  it 'should unify a special case' do
556
- variable1 = Variable.new :x, goal1
556
+ variable1 = Porolog::Variable.new :x, goal1
557
557
 
558
558
  variable1.values << [1,[3,4]]
559
559
  variable1.values << goal1[:h]/goal1[:t]
@@ -566,8 +566,8 @@ describe 'Porolog' do
566
566
  describe '#instantiate' do
567
567
 
568
568
  it 'should instantiate with another variable' do
569
- variable1 = Variable.new :x, goal1
570
- variable2 = Variable.new :y, goal2
569
+ variable1 = Porolog::Variable.new :x, goal1
570
+ variable2 = Porolog::Variable.new :y, goal2
571
571
 
572
572
  variable1.instantiate variable2
573
573
 
@@ -576,9 +576,9 @@ describe 'Porolog' do
576
576
  end
577
577
 
578
578
  it 'should instantiate with a value' do
579
- variable1 = Variable.new :x, goal1
580
- variable2 = Variable.new :y, goal2
581
- value = Value.new 'word', goal2
579
+ variable1 = Porolog::Variable.new :x, goal1
580
+ variable2 = Porolog::Variable.new :y, goal2
581
+ value = Porolog::Value.new 'word', goal2
582
582
 
583
583
  variable1.instantiate variable2
584
584
  variable2.instantiate value
@@ -590,9 +590,9 @@ describe 'Porolog' do
590
590
 
591
591
  it 'should instantiate with an indexed variable' do
592
592
  # -- Elements --
593
- variable1 = Variable.new :x, goal1
594
- variable2 = Variable.new :y, goal2
595
- value = Value.new [7,11,13,23,29], goal2
593
+ variable1 = Porolog::Variable.new :x, goal1
594
+ variable2 = Porolog::Variable.new :y, goal2
595
+ value = Porolog::Value.new [7,11,13,23,29], goal2
596
596
 
597
597
  # -- Make Instantiations --
598
598
  #
@@ -628,10 +628,10 @@ describe 'Porolog' do
628
628
 
629
629
  it 'should instantiate indexed with an indexed variable' do
630
630
  # -- Elements --
631
- variable1 = Variable.new :x, goal1
632
- variable2 = Variable.new :y, goal2
633
- variable3 = Variable.new :z, goal2
634
- value = Value.new [[],[1,2,3],'word',[7,11,13,23,29]], goal2
631
+ variable1 = Porolog::Variable.new :x, goal1
632
+ variable2 = Porolog::Variable.new :y, goal2
633
+ variable3 = Porolog::Variable.new :z, goal2
634
+ value = Porolog::Value.new [[],[1,2,3],'word',[7,11,13,23,29]], goal2
635
635
 
636
636
  assert_Value value, [[],[1,2,3],'word',[7,11,13,23,29]], goal2
637
637
 
@@ -729,9 +729,9 @@ describe 'Porolog' do
729
729
  end
730
730
 
731
731
  it 'should instantiate with an indexed value' do
732
- variable1 = Variable.new :x, goal1
733
- variable2 = Variable.new :y, goal2
734
- value = Value.new [7,11,13,23,29], goal2
732
+ variable1 = Porolog::Variable.new :x, goal1
733
+ variable2 = Porolog::Variable.new :y, goal2
734
+ value = Porolog::Value.new [7,11,13,23,29], goal2
735
735
 
736
736
  variable1.instantiate variable2
737
737
  variable2.instantiate value, 3
@@ -741,9 +741,9 @@ describe 'Porolog' do
741
741
  end
742
742
 
743
743
  it 'should instantiate with an indexed variable' do
744
- variable1 = Variable.new :x, goal1
745
- variable2 = Variable.new :y, goal2
746
- value = Value.new [7,11,13,23,29], goal2
744
+ variable1 = Porolog::Variable.new :x, goal1
745
+ variable2 = Porolog::Variable.new :y, goal2
746
+ value = Porolog::Value.new [7,11,13,23,29], goal2
747
747
 
748
748
  variable1.instantiate variable2, 2
749
749
  variable2.instantiate value
@@ -754,9 +754,9 @@ describe 'Porolog' do
754
754
  end
755
755
 
756
756
  it 'should instantiate with an indexed value' do
757
- variable1 = Variable.new :x, goal1
758
- variable2 = Variable.new :y, goal2
759
- value = Value.new [7,11,13,23,29], goal2
757
+ variable1 = Porolog::Variable.new :x, goal1
758
+ variable2 = Porolog::Variable.new :y, goal2
759
+ value = Porolog::Value.new [7,11,13,23,29], goal2
760
760
 
761
761
  variable1.instantiate variable2
762
762
  variable2.instantiate value, 3
@@ -788,15 +788,15 @@ describe 'Porolog' do
788
788
  f = g6.variable :f
789
789
  g = g7.variable :g
790
790
 
791
- assert_instance_of Instantiation, f.instantiate(g6.value(8))
792
- assert_instance_of Instantiation, g.instantiate(g7.value(9))
791
+ assert_instance_of Porolog::Instantiation, f.instantiate(g6.value(8))
792
+ assert_instance_of Porolog::Instantiation, g.instantiate(g7.value(9))
793
793
 
794
- assert_instance_of Instantiation, a.instantiate(b)
795
- assert_instance_of Instantiation, a.instantiate(c)
796
- assert_instance_of Instantiation, b.instantiate(d)
797
- assert_instance_of Instantiation, d.instantiate(f)
798
- assert_instance_of Instantiation, c.instantiate(e)
799
- assert_nil e.instantiate(g)
794
+ assert_instance_of Porolog::Instantiation, a.instantiate(b)
795
+ assert_instance_of Porolog::Instantiation, a.instantiate(c)
796
+ assert_instance_of Porolog::Instantiation, b.instantiate(d)
797
+ assert_instance_of Porolog::Instantiation, d.instantiate(f)
798
+ assert_instance_of Porolog::Instantiation, c.instantiate(e)
799
+ assert_nil e.instantiate(g)
800
800
 
801
801
  assert_Goal_variables g1, { m: nil, n: nil, a: 8 }, [
802
802
  'Goal1.:m',
@@ -873,8 +873,8 @@ describe 'Porolog' do
873
873
  end
874
874
 
875
875
  it 'should return nil when the there are multiple different values' do
876
- variable1 = Variable.new :x, goal1
877
- value = Value.new 111, goal2
876
+ variable1 = Porolog::Variable.new :x, goal1
877
+ value = Porolog::Value.new 111, goal2
878
878
 
879
879
  variable1.values << 112
880
880
 
@@ -887,11 +887,11 @@ describe 'Porolog' do
887
887
 
888
888
  describe '#remove' do
889
889
 
890
- let(:variable1) { Variable.new :x, goal1 }
891
- let(:variable2) { Variable.new :y, goal2 }
892
- let(:variable3) { Variable.new :z, goal3 }
893
- let(:value1) { Value.new 'word', goal2 }
894
- let(:value2) { Value.new 'word', goal3 }
890
+ let(:variable1) { Porolog::Variable.new :x, goal1 }
891
+ let(:variable2) { Porolog::Variable.new :y, goal2 }
892
+ let(:variable3) { Porolog::Variable.new :z, goal3 }
893
+ let(:value1) { Porolog::Value.new 'word', goal2 }
894
+ let(:value2) { Porolog::Value.new 'word', goal3 }
895
895
 
896
896
  before do
897
897
  variable1.instantiate variable2
@@ -1073,11 +1073,11 @@ describe 'Porolog' do
1073
1073
 
1074
1074
  describe '#uninstantiate' do
1075
1075
 
1076
- let(:variable1) { Variable.new :x, goal1 }
1077
- let(:variable2) { Variable.new :y, goal2 }
1078
- let(:variable3) { Variable.new :z, goal3 }
1079
- let(:value1) { Value.new 'word', goal2 }
1080
- let(:value2) { Value.new 'word', goal3 }
1076
+ let(:variable1) { Porolog::Variable.new :x, goal1 }
1077
+ let(:variable2) { Porolog::Variable.new :y, goal2 }
1078
+ let(:variable3) { Porolog::Variable.new :z, goal3 }
1079
+ let(:value1) { Porolog::Value.new 'word', goal2 }
1080
+ let(:value2) { Porolog::Value.new 'word', goal3 }
1081
1081
 
1082
1082
  before do
1083
1083
  variable1.instantiate variable2
@@ -1548,8 +1548,8 @@ describe 'Porolog' do
1548
1548
  describe '#[]' do
1549
1549
 
1550
1550
  it 'should return the element at the specified index' do
1551
- variable = Variable.new :x, goal1
1552
- value = Value.new [3,5,7,11,13,17], goal2
1551
+ variable = Porolog::Variable.new :x, goal1
1552
+ value = Porolog::Value.new [3,5,7,11,13,17], goal2
1553
1553
 
1554
1554
  variable.instantiate value
1555
1555
 
@@ -1558,8 +1558,8 @@ describe 'Porolog' do
1558
1558
  end
1559
1559
 
1560
1560
  it 'should return nil for an out of range index' do
1561
- variable = Variable.new :x, goal1
1562
- value = Value.new [3,5,7,11,13,17], goal2
1561
+ variable = Porolog::Variable.new :x, goal1
1562
+ value = Porolog::Value.new [3,5,7,11,13,17], goal2
1563
1563
 
1564
1564
  variable.instantiate value
1565
1565
 
@@ -1568,8 +1568,8 @@ describe 'Porolog' do
1568
1568
  end
1569
1569
 
1570
1570
  it 'should return nil when the value is not an array' do
1571
- variable = Variable.new :x, goal1
1572
- value = Value.new 12, goal2
1571
+ variable = Porolog::Variable.new :x, goal1
1572
+ value = Porolog::Value.new 12, goal2
1573
1573
 
1574
1574
  variable.instantiate value
1575
1575
 
@@ -1578,8 +1578,8 @@ describe 'Porolog' do
1578
1578
  end
1579
1579
 
1580
1580
  it 'should return the head' do
1581
- variable = Variable.new :x, goal1
1582
- value = Value.new [3,5,7,11,13,17], goal2
1581
+ variable = Porolog::Variable.new :x, goal1
1582
+ value = Porolog::Value.new [3,5,7,11,13,17], goal2
1583
1583
 
1584
1584
  variable.instantiate value
1585
1585
 
@@ -1588,8 +1588,8 @@ describe 'Porolog' do
1588
1588
  end
1589
1589
 
1590
1590
  it 'should return the tail' do
1591
- variable = Variable.new :x, goal1
1592
- value = Value.new [3,5,7,11,13,17], goal2
1591
+ variable = Porolog::Variable.new :x, goal1
1592
+ value = Porolog::Value.new [3,5,7,11,13,17], goal2
1593
1593
 
1594
1594
  variable.instantiate value
1595
1595
 
@@ -1602,7 +1602,7 @@ describe 'Porolog' do
1602
1602
  describe '#variables' do
1603
1603
 
1604
1604
  it 'should return an Array of itself' do
1605
- variable = Variable.new :x, goal1
1605
+ variable = Porolog::Variable.new :x, goal1
1606
1606
 
1607
1607
  assert_equal [variable], variable.variables
1608
1608
  end