rtm 0.3.0 → 0.3.1
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/DISCLAIMER +3 -1
- data/README +0 -0
- data/lib/rtm.rb +0 -1
- data/lib/rtm/axes/topic.rb +0 -3
- data/lib/rtm/axes/topics.rb +0 -3
- data/lib/rtm/connection.rb +4 -4
- data/lib/rtm/engine.rb +6 -5
- data/lib/rtm/extensions.rb +1 -1
- data/lib/rtm/helpers/no_output.rb +1 -1
- data/lib/rtm/io/from_xtm2_libxml.rb +2 -2
- data/lib/rtm/io/tmapix_from.rb +11 -24
- data/lib/rtm/io/tmapix_to.rb +38 -7
- data/lib/rtm/navigation/topic/characteristics.rb +7 -9
- data/lib/rtm/navigation/topic/supertypes.rb +1 -5
- data/lib/rtm/sugar.rb +16 -1
- data/lib/rtm/sugar/association/remove.rb +21 -0
- data/lib/rtm/sugar/name/remove.rb +18 -0
- data/lib/rtm/sugar/occurrence/external.rb +1 -0
- data/lib/rtm/sugar/occurrence/remove.rb +15 -0
- data/lib/rtm/sugar/topic/remove.rb +23 -0
- data/lib/rtm/sugar/topic/topic_ref.rb +111 -7
- data/lib/rtm/sugar/topic_map/readable.rb +19 -0
- data/lib/rtm/sugar/topic_map/remove.rb +15 -6
- data/lib/rtm/sugar/topic_map/resolve.rb +44 -0
- data/lib/rtm/sugar/topic_map/scoped.rb +42 -0
- data/lib/rtm/sugar/topic_map/types.rb +46 -0
- data/lib/rtm/sugar/variant/remove.rb +15 -0
- data/lib/rtm/version.rb +1 -2
- data/spec/rtm/axes/topic_spec.rb +4 -4
- data/spec/rtm/axes/topics_spec.rb +4 -4
- data/spec/rtm/engine_spec.rb +10 -1
- data/spec/rtm/io/tmapix_from_spec.rb +41 -9
- data/spec/rtm/io/tmapix_to_spec.rb +58 -32
- data/spec/rtm/io/to_rdf_spec.rb +8 -4
- data/spec/rtm/javatmapi_spec.rb +39 -29
- data/spec/rtm/navigation/topic/characteristics_spec.rb +11 -16
- data/spec/rtm/navigation/topic/supertypes_spec.rb +32 -89
- data/spec/rtm/navigation/topic_spec.rb +4 -4
- data/spec/rtm/sugar/association/hash_access_spec.rb +1 -1
- data/spec/rtm/sugar/topic/counterparts_spec.rb +18 -2
- data/spec/rtm/sugar/topic/remove_spec.rb +46 -0
- data/spec/rtm/sugar/topic/topic_ref_spec.rb +99 -26
- data/spec/rtm/sugar/topic_map/readable_spec.rb +25 -0
- data/spec/rtm/sugar/topic_map/remove_spec.rb +4 -1
- data/spec/rtm/sugar/topic_map/resolve_spec.rb +56 -0
- data/spec/rtm/sugar/topic_map/types_spec.rb +31 -0
- data/spec/rtm/tmapi/core/reifiable_spec.rb +0 -1
- data/spec/rtm/tmapi/core/topic_map_spec.rb +13 -8
- data/spec/rtm/tmapi/core/topic_spec.rb +17 -6
- data/spec/rtm/tmapi_spec.rb +2 -2
- data/spec/rtm_spec.rb +3 -3
- data/spec/spec_helper.rb +34 -6
- data/test/javalibs/junit-4.8.1.jar +0 -0
- data/test/javalibs/tmapi-tests-2.0.3-SNAPSHOT.jar +0 -0
- metadata +175 -165
- data/test/javalibs/junit-4.5.jar +0 -0
- data/test/javalibs/tmapi-2.0-tests.jar +0 -0
data/spec/rtm/axes/topic_spec.rb
CHANGED
@@ -50,11 +50,11 @@ module RTM::Axes
|
|
50
50
|
it "should be allowed to call #subtypes on a RTM::Axes::Topic" do
|
51
51
|
@proxy.methods.should include("subtypes")
|
52
52
|
end
|
53
|
-
it "should be allowed to call #reverse_subtypes on a RTM::Axes::Topic" do
|
54
|
-
@proxy.methods.
|
53
|
+
it "should not be allowed to call #reverse_subtypes on a RTM::Axes::Topic" do
|
54
|
+
@proxy.methods.should_not include("reverse_subtypes")
|
55
55
|
end
|
56
|
-
it "should be allowed to call #reverse_supertypes on a RTM::Axes::Topic" do
|
57
|
-
@proxy.methods.
|
56
|
+
it "should not be allowed to call #reverse_supertypes on a RTM::Axes::Topic" do
|
57
|
+
@proxy.methods.should_not include("reverse_supertypes")
|
58
58
|
end
|
59
59
|
it "should be allowed to call #traverse on a RTM::Axes::Topic" do
|
60
60
|
@proxy.methods.should include("traverse")
|
@@ -53,11 +53,11 @@ module RTM::Axes
|
|
53
53
|
it "should be allowed to call #subtypes on a RTM::TQML::Topics" do
|
54
54
|
@proxy.methods.should include("subtypes")
|
55
55
|
end
|
56
|
-
it "should be allowed to call #reverse_subtypes on a RTM::TQML::Topics" do
|
57
|
-
@proxy.methods.
|
56
|
+
it "should not be allowed to call #reverse_subtypes on a RTM::TQML::Topics" do
|
57
|
+
@proxy.methods.should_not include("reverse_subtypes")
|
58
58
|
end
|
59
|
-
it "should be allowed to call #reverse_supertypes on a RTM::TQML::Topics" do
|
60
|
-
@proxy.methods.
|
59
|
+
it "should not be allowed to call #reverse_supertypes on a RTM::TQML::Topics" do
|
60
|
+
@proxy.methods.should_not include("reverse_supertypes")
|
61
61
|
end
|
62
62
|
it "should be allowed to call #traverse on a RTM::TQML::Topics" do
|
63
63
|
@proxy.methods.should include("traverse")
|
data/spec/rtm/engine_spec.rb
CHANGED
@@ -10,7 +10,7 @@ module RTM
|
|
10
10
|
|
11
11
|
describe "#identifier" do
|
12
12
|
before(:all) do
|
13
|
-
@connection =
|
13
|
+
@connection = get_used_tm_sys
|
14
14
|
@tested = false
|
15
15
|
end
|
16
16
|
it "should return :ontopia if ontopia is used" do
|
@@ -32,6 +32,15 @@ module RTM
|
|
32
32
|
elsif implementation_for_spec == :sesametm
|
33
33
|
@connection.identifier.should == :sesametm
|
34
34
|
@tested = true
|
35
|
+
elsif implementation_for_spec == :majortom
|
36
|
+
@connection.identifier.should == :majortom
|
37
|
+
@tested = true
|
38
|
+
elsif implementation_for_spec == :majortom_db
|
39
|
+
@connection.identifier.should == :majortom
|
40
|
+
@tested = true
|
41
|
+
elsif implementation_for_spec == :couchtm
|
42
|
+
@connection.identifier.should == :couchtm
|
43
|
+
@tested = true
|
35
44
|
else
|
36
45
|
# engine not found
|
37
46
|
end
|
@@ -8,38 +8,68 @@ module RTM::IO::TmapiXFrom::TopicMap
|
|
8
8
|
describe self do
|
9
9
|
before(:each) do
|
10
10
|
@tm = get_used_tm_sys_tm
|
11
|
+
@tm.topics.should be_empty
|
12
|
+
@tm.associations.should be_empty
|
13
|
+
@tm.names.should be_empty
|
14
|
+
@tm.occurrences.should be_empty
|
15
|
+
@tm.variants.should be_empty
|
16
|
+
@tm.roles.should be_empty
|
17
|
+
@test_size = false
|
11
18
|
end
|
12
19
|
after(:each) do
|
20
|
+
if @test_size
|
21
|
+
# This is just for testing if approx. everything was imported
|
22
|
+
@tm.topics.size.should >= 117
|
23
|
+
@tm.associations.size.should >= 58
|
24
|
+
@tm.names.size.should >= 169
|
25
|
+
@tm.occurrences.size.should == 28
|
26
|
+
@tm.variants.size.should == 44
|
27
|
+
@tm.roles.size.should >= 131
|
28
|
+
end
|
13
29
|
@tm.close
|
14
30
|
end
|
15
31
|
|
16
32
|
describe "#from_ltm" do
|
17
33
|
it "should import into an empty topic map" do
|
18
34
|
@tm.from_ltm(File.dirname(__FILE__) + "/../../resources/toyTM.ltm")
|
35
|
+
# @tm.occurrences.each do |o|
|
36
|
+
# puts "Occurrence:"
|
37
|
+
# puts "Type: " + o.type.reference
|
38
|
+
# puts "Parent: " + o.parent.reference
|
39
|
+
# end
|
40
|
+
#@test_size = true
|
41
|
+
end
|
42
|
+
it "should load the pokemon.ltm map" do
|
43
|
+
@tm.from_ltm(File.dirname(__FILE__) + "/../../resources/pokemon.ltm")
|
19
44
|
end
|
20
45
|
end
|
21
46
|
|
22
47
|
describe "#from_ctm" do
|
23
48
|
it "should import into an empty topic map" do
|
24
49
|
@tm.from_ctm(File.dirname(__FILE__) + "/../../resources/toyTM.ctm")
|
50
|
+
@test_size = true
|
25
51
|
end
|
26
52
|
end
|
27
53
|
|
28
54
|
describe "#from_jtm" do
|
29
55
|
it "should import into an empty topic map" do
|
30
|
-
|
56
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
57
|
+
@test_size = true
|
31
58
|
end
|
32
59
|
end
|
33
60
|
|
34
61
|
describe "#from_tmxml" do
|
35
62
|
it "should import into an empty topic map" do
|
36
|
-
|
63
|
+
pending "not working" do
|
64
|
+
@tm.from_tmxml(File.dirname(__FILE__) + "/../../resources/toyTM.tmxml")
|
65
|
+
end
|
37
66
|
end
|
38
67
|
end
|
39
68
|
|
40
69
|
describe "#from_xtm10" do
|
41
70
|
it "should import into an empty topic map" do
|
42
|
-
|
71
|
+
@tm.from_xtm10(File.dirname(__FILE__) + "/../../resources/toyTM_xtm10.xtm")
|
72
|
+
@test_size = true
|
43
73
|
end
|
44
74
|
it "should provide an alias for from_xtm1" do
|
45
75
|
@tm.method(:from_xtm1).should == @tm.method(:from_xtm10)
|
@@ -48,19 +78,21 @@ module RTM::IO::TmapiXFrom::TopicMap
|
|
48
78
|
|
49
79
|
describe "#from_xtm20" do
|
50
80
|
it "should import into an empty topic map" do
|
51
|
-
@tm.from_xtm20(File.dirname(__FILE__) + "/../../resources/
|
81
|
+
@tm.from_xtm20(File.dirname(__FILE__) + "/../../resources/toyTM_xtm20.xtm")
|
82
|
+
@test_size = true
|
52
83
|
end
|
53
84
|
it "should provide an alias for from_xtm2" do
|
54
85
|
@tm.method(:from_xtm2).should == @tm.method(:from_xtm20)
|
55
86
|
end
|
56
87
|
end
|
57
88
|
|
58
|
-
describe "#
|
59
|
-
it "should import into an empty topic map from xtm v2.
|
60
|
-
@tm.
|
89
|
+
describe "#from_xtm21" do
|
90
|
+
it "should import into an empty topic map from xtm v2.1" do
|
91
|
+
@tm.from_xtm21(File.dirname(__FILE__) + "/../../resources/toyTM.xtm")
|
92
|
+
@test_size = true
|
61
93
|
end
|
62
|
-
it "should
|
63
|
-
|
94
|
+
it "should provide an alias for from_xtm2" do
|
95
|
+
@tm.method(:from_xtm).should == @tm.method(:from_xtm20)
|
64
96
|
end
|
65
97
|
end
|
66
98
|
|
@@ -13,9 +13,33 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
13
13
|
@tm.close
|
14
14
|
end
|
15
15
|
|
16
|
+
describe "#to_xtm21" do
|
17
|
+
before(:each) do
|
18
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
19
|
+
end
|
20
|
+
it "should serialize a topic map to String" do
|
21
|
+
@tm.to_xtm21.should be_a_kind_of String
|
22
|
+
end
|
23
|
+
it "should serialize a topic map to a file" do
|
24
|
+
@tm.to_xtm21(File.dirname(__FILE__) + "/../../resources/toyTM_after_spec.xtm21").should be_true
|
25
|
+
end
|
26
|
+
it "should serialize a topic map to a file given a base iri" do
|
27
|
+
@tm.to_xtm21(File.dirname(__FILE__) + "/../../resources/toyTM_after_spec.xtm20", "http://www.example.org/testtm").should be_true
|
28
|
+
end
|
29
|
+
it "should serialize a topic map to a Java::JavaIo::Stream" do
|
30
|
+
@tm.to_xtm21(Java::JavaIo::ByteArrayOutputStream.new).should be_true
|
31
|
+
end
|
32
|
+
it "should be the case that the xtm21 writer does not respond to :setProperty" do
|
33
|
+
Java::OrgTmapixIo::XTM2TopicMapWriter.new(Java::JavaIo::ByteArrayOutputStream.new,"http://www.example.org/testtm",Java::OrgTmapixIo::XTMVersion::XTM_2_1).should_not respond_to(:setProperty)
|
34
|
+
end
|
35
|
+
it "should provide an alias for to_xtm" do
|
36
|
+
@tm.method(:to_xtm).should == @tm.method(:to_xtm21)
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
16
40
|
describe "#to_xtm20" do
|
17
41
|
before(:each) do
|
18
|
-
@tm.
|
42
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
19
43
|
end
|
20
44
|
it "should serialize a topic map to String" do
|
21
45
|
@tm.to_xtm20.should be_a_kind_of String
|
@@ -30,10 +54,7 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
30
54
|
@tm.to_xtm20(Java::JavaIo::ByteArrayOutputStream.new).should be_true
|
31
55
|
end
|
32
56
|
it "should be the case that the xtm20 writer does not respond to :setProperty" do
|
33
|
-
Java::OrgTmapixIo::
|
34
|
-
end
|
35
|
-
it "should provide an alias for to_xtm" do
|
36
|
-
@tm.method(:to_xtm).should == @tm.method(:to_xtm20)
|
57
|
+
Java::OrgTmapixIo::XTM2TopicMapWriter.new(Java::JavaIo::ByteArrayOutputStream.new,"http://www.example.org/testtm",Java::OrgTmapixIo::XTMVersion::XTM_2_1).should_not respond_to(:setProperty)
|
37
58
|
end
|
38
59
|
it "should provide an alias for to_xtm2" do
|
39
60
|
@tm.method(:to_xtm2).should == @tm.method(:to_xtm20)
|
@@ -42,7 +63,7 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
42
63
|
|
43
64
|
describe "#to_xtm10" do
|
44
65
|
before(:each) do
|
45
|
-
@tm.
|
66
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
46
67
|
end
|
47
68
|
it "should serialize a topic map to String" do
|
48
69
|
@tm.to_xtm10.should be_a_kind_of String
|
@@ -66,7 +87,7 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
66
87
|
|
67
88
|
describe "#to_jtm" do
|
68
89
|
before(:each) do
|
69
|
-
@tm.
|
90
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
70
91
|
end
|
71
92
|
it "should serialize a topic map to String" do
|
72
93
|
@tm.to_jtm.should be_a_kind_of String
|
@@ -83,14 +104,16 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
83
104
|
it "should be the case that the jtm writer does not respond to :setProperty" do
|
84
105
|
Java::OrgTmapixIo::JTMTopicMapWriter.new(Java::JavaIo::ByteArrayOutputStream.new,"http://www.example.org/testtm").should_not respond_to(:setProperty)
|
85
106
|
end
|
86
|
-
|
87
|
-
|
107
|
+
unless implementation_for_spec == :couchtm
|
108
|
+
it "should provide an alias for to_json" do
|
109
|
+
@tm.method(:to_json).should == @tm.method(:to_jtm)
|
110
|
+
end
|
88
111
|
end
|
89
112
|
end
|
90
113
|
|
91
114
|
describe "#to_ltm" do
|
92
115
|
before(:each) do
|
93
|
-
@tm.
|
116
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
94
117
|
end
|
95
118
|
it "should serialize a topic map to String" do
|
96
119
|
@tm.to_ltm.should be_a_kind_of String
|
@@ -109,30 +132,30 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
109
132
|
end
|
110
133
|
end
|
111
134
|
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
135
|
+
describe "#to_tmxml" do
|
136
|
+
before(:each) do
|
137
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
138
|
+
end
|
139
|
+
it "should serialize a topic map to String" do
|
140
|
+
@tm.to_tmxml.should be_a_kind_of String
|
141
|
+
end
|
142
|
+
it "should serialize a topic map to a file" do
|
143
|
+
@tm.to_tmxml(File.dirname(__FILE__) + "/../../resources/toyTM_after_spec.tmxml").should be_true
|
144
|
+
end
|
145
|
+
it "should serialize a topic map to a file given a base iri" do
|
146
|
+
@tm.to_tmxml(File.dirname(__FILE__) + "/../../resources/toyTM_after_spec.tmxml", "http://www.example.org/testtm").should be_true
|
147
|
+
end
|
148
|
+
it "should serialize a topic map to a Java::JavaIo::Stream" do
|
149
|
+
@tm.to_tmxml(Java::JavaIo::ByteArrayOutputStream.new).should be_true
|
150
|
+
end
|
151
|
+
it "should be the case that the tmxml writer does not respond to :setProperty" do
|
152
|
+
Java::OrgTmapixIo::TMXMLTopicMapWriter.new(Java::JavaIo::ByteArrayOutputStream.new,"http://www.example.org/testtm").should_not respond_to(:setProperty)
|
153
|
+
end
|
154
|
+
end
|
132
155
|
|
133
|
-
describe "#
|
156
|
+
describe "#to_jtm" do
|
134
157
|
before(:each) do
|
135
|
-
@tm.
|
158
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
136
159
|
end
|
137
160
|
it "should serialize a topic map to String" do
|
138
161
|
@tm.to_ctm.should be_a_kind_of String
|
@@ -151,6 +174,9 @@ module RTM::IO::TmapiXTo::TopicMap
|
|
151
174
|
end
|
152
175
|
it "should read it afterwards" do
|
153
176
|
emptyTM = get_used_tm_sys.create("http://blub.org/")
|
177
|
+
if implementation_for_spec == :majortom_db
|
178
|
+
emptyTM.clear
|
179
|
+
end
|
154
180
|
emptyTM.from_ctm(File.dirname(__FILE__) + "/../../resources/toyTM_after_spec.ctm")
|
155
181
|
end
|
156
182
|
end
|
data/spec/rtm/io/to_rdf_spec.rb
CHANGED
@@ -8,7 +8,7 @@ module RTM::IO::ToRDF::TopicMap
|
|
8
8
|
describe self do
|
9
9
|
before(:each) do
|
10
10
|
@tm = get_used_tm_sys_tm
|
11
|
-
@tm.
|
11
|
+
@tm.from_jtm(File.dirname(__FILE__) + "/../../resources/toyTM.jtm")
|
12
12
|
end
|
13
13
|
after(:each) do
|
14
14
|
@tm.close
|
@@ -17,8 +17,10 @@ module RTM::IO::ToRDF::TopicMap
|
|
17
17
|
describe "#to_rdf" do
|
18
18
|
it "should be callable on an Ontopia topic map" do
|
19
19
|
if implementation_for_spec == :ontopia
|
20
|
-
|
21
|
-
|
20
|
+
pending "should fail wihtout lucene" do
|
21
|
+
lambda{@tm.to_rdf}.should_not raise_error
|
22
|
+
@tm.to_rdf.should be_a_kind_of String
|
23
|
+
end
|
22
24
|
else
|
23
25
|
lambda{@tm.to_rdf}.should raise_error
|
24
26
|
end
|
@@ -28,7 +30,9 @@ module RTM::IO::ToRDF::TopicMap
|
|
28
30
|
describe "#to_rdf_ontopia" do
|
29
31
|
it "should be callable on an Ontopia topic map" do
|
30
32
|
if implementation_for_spec == :ontopia
|
31
|
-
|
33
|
+
pending "should fail wihtout lucene" do
|
34
|
+
@tm.to_rdf_ontopia.should be_a_kind_of String
|
35
|
+
end
|
32
36
|
end
|
33
37
|
end
|
34
38
|
end
|
data/spec/rtm/javatmapi_spec.rb
CHANGED
@@ -6,28 +6,27 @@ require File.dirname(__FILE__) + '/../spec_helper'
|
|
6
6
|
module RTM
|
7
7
|
|
8
8
|
describe "JavaTMAPI" do
|
9
|
+
before(:each) do
|
10
|
+
@base_iri = "http://www.exampl.org/test/"
|
11
|
+
@engine = get_used_tm_sys
|
12
|
+
@tm = @engine.create(@base_iri)
|
13
|
+
end
|
9
14
|
|
10
15
|
describe "#create" do
|
11
16
|
it "should give always give back the same topic map" do
|
12
|
-
tm_identifier = "http://www.exampl.org/test/"
|
13
|
-
engine = RTM.connect(:implementation => implementation_for_spec)
|
14
|
-
tm = engine.create(tm_identifier)
|
15
17
|
1000.times do
|
16
|
-
tm_other = engine.create(
|
17
|
-
tm_other.should == tm
|
18
|
+
tm_other = @engine.create(@base_iri)
|
19
|
+
tm_other.should == @tm
|
18
20
|
tm_other.engine.should_not be_nil
|
19
21
|
tm_other.prefixes.should_not be_empty
|
20
22
|
end
|
21
23
|
end
|
22
|
-
it "should raise an error if topic map
|
23
|
-
|
24
|
-
engine = RTM.connect(:implementation => implementation_for_spec)
|
24
|
+
it "should raise an error if the topic map base_iri is relative" do
|
25
|
+
rel_base_iri = "www.exampl.org/test/"
|
25
26
|
if implementation_for_spec == :tinytim
|
26
|
-
|
27
|
-
lambda{engine.create(tm_identifier)}.should raise_error
|
28
|
-
end
|
27
|
+
lambda{@engine.create(rel_base_iri)}.should_not raise_error
|
29
28
|
else
|
30
|
-
lambda{engine.create(
|
29
|
+
lambda{@engine.create(rel_base_iri)}.should raise_error
|
31
30
|
end
|
32
31
|
end
|
33
32
|
it "should be tested"
|
@@ -35,30 +34,41 @@ module RTM
|
|
35
34
|
|
36
35
|
describe "#delete" do
|
37
36
|
it "should delete a topic map" do
|
38
|
-
|
39
|
-
|
40
|
-
tm
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
37
|
+
@tm.should be_a_kind_of RTM::TopicMap
|
38
|
+
@tm.create_topic
|
39
|
+
@tm.create_association(@tm.create_topic)
|
40
|
+
@engine.tms.getTopicMap(@base_iri).should_not be_nil
|
41
|
+
@engine.delete(@base_iri)
|
42
|
+
@engine.tms.getTopicMap(@base_iri).should be_nil
|
43
|
+
end
|
44
|
+
it "should delete the toyTM" do
|
45
|
+
@tm.from_xtm(File.dirname(__FILE__) + "/../resources/toyTM.xtm")
|
46
|
+
@engine.delete(@base_iri)
|
47
47
|
end
|
48
48
|
end
|
49
49
|
|
50
50
|
describe "#existing?" do
|
51
51
|
it "should tell if the map is existing" do
|
52
|
-
|
53
|
-
engine
|
54
|
-
engine.
|
55
|
-
|
56
|
-
engine.existing?(tm_identifier).should be_true
|
57
|
-
engine.delete(tm_identifier)
|
58
|
-
engine.existing?(tm_identifier).should_not be_true
|
52
|
+
@engine.existing?("http://not.existing").should_not be_true
|
53
|
+
@engine.existing?(@base_iri).should be_true
|
54
|
+
@engine.delete(@base_iri)
|
55
|
+
@engine.existing?(@base_iri).should_not be_true
|
59
56
|
end
|
60
57
|
end
|
61
|
-
|
58
|
+
|
59
|
+
describe "#topic_map" do
|
60
|
+
it "should return nil if no topic map exists with the given base_iri" do
|
61
|
+
@engine.topic_map("http://not.existing").should be_nil
|
62
|
+
@engine.topic_map(@engine.create_locator("http://also.not.existing")).should be_nil
|
63
|
+
end
|
64
|
+
it "should return the topic map if it is existing" do
|
65
|
+
tm = @engine.topic_map(@base_iri)
|
66
|
+
tm.should == @tm
|
67
|
+
tm.engine.should_not be_nil
|
68
|
+
tm.prefixes.should_not be_empty
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
62
72
|
end # of describe self
|
63
73
|
|
64
74
|
end
|
@@ -20,7 +20,6 @@ module RTM::Navigation::Topic
|
|
20
20
|
topic.characteristics.size.should == 0
|
21
21
|
occ1 = topic.create_occurrence("Gruendungsjahr", "1409")
|
22
22
|
topic.characteristics("super_Gruendungsjahr").size.should == 0
|
23
|
-
topic.characteristics("super_Gruendungsjahr").include?(occ1).should be_false
|
24
23
|
end
|
25
24
|
it "should give back the values of the Names and Occurrences included in Characteristics" do
|
26
25
|
topic = @tm.create_topic_by("Uni_Leipzig")
|
@@ -31,21 +30,17 @@ module RTM::Navigation::Topic
|
|
31
30
|
topic.characteristics.size.should == 4
|
32
31
|
topic.characteristics.should include name1, name2, occ1, occ2
|
33
32
|
end
|
34
|
-
|
35
|
-
it "should give back Names and Occurrences of the subtype of the given argument" do
|
36
|
-
topic = @tm.
|
37
|
-
|
38
|
-
@tm.get("
|
39
|
-
topic.
|
40
|
-
topic.
|
41
|
-
topic.
|
42
|
-
|
43
|
-
topic.characteristics("
|
44
|
-
topic.characteristics("
|
45
|
-
occ1 = topic.create_occurrence("Gruendungsjahr", "1409")
|
46
|
-
@tm.get("Gruendungsjahr").add_supertype("super_Gruendungsjahr")
|
47
|
-
topic.characteristics("super_Gruendungsjahr").size.should == 1
|
48
|
-
topic.characteristics("super_Gruendungsjahr").include?(occ1).should be_true
|
33
|
+
|
34
|
+
it "should give back Names and Occurrences with a type of the subtype of the given argument" do
|
35
|
+
topic = @tm.get!("Uni_Leipzig")
|
36
|
+
name = topic.create_name("university name", "Universität Leipzig")
|
37
|
+
@tm.get!("name").add_subtype("university name")
|
38
|
+
topic.characteristics("name").size.should == 1
|
39
|
+
topic.characteristics("name").should include(name)
|
40
|
+
occ = topic.create_occurrence("Gruendungsjahr", "1409")
|
41
|
+
@tm.get!("Jahr").add_subtype("Gruendungsjahr")
|
42
|
+
topic.characteristics("Jahr").size.should == 1
|
43
|
+
topic.characteristics("Jahr").should include(occ)
|
49
44
|
end
|
50
45
|
|
51
46
|
end #of describe "#characteristics"
|