@@ -8,189 +8,13 @@ open ARCtrl
88
99open TestingUtils
1010
11- let create_TestTemplate () =
12- let table = ArcTable.init( " My Table" )
13- table.AddColumn( CompositeHeader.Input IOType.Source, [| for i in 0 .. 9 do yield CompositeCell.createFreeText( $" Source {i}" )|])
14- table.AddColumn( CompositeHeader.Output IOType.RawDataFile, [| for i in 0 .. 9 do yield CompositeCell.createFreeText( $" Output {i}" )|])
15- let guid = System.Guid( String.init 32 ( fun _ -> " d" ))
16- Template.make
17- guid
18- table
19- " My Template"
20- " My Template is great"
21- DataPLANT
22- " 1.0.3"
23- ( ResizeArray [| Person.create( firstName= " John" , lastName= " Doe" )|])
24- ( ResizeArray [| OntologyAnnotation " My oa rep" |])
25- ( ResizeArray [| OntologyAnnotation " My oa tag" |])
26- ( System.DateTime( 2023 , 09 , 19 ))
27-
28-
29- let private tests_equality = testList " equality" [
30-
31- testList " override equality" [
32- testCase " equal" <| fun _ ->
33- let template1 = create_ TestTemplate()
34- let template2 = create_ TestTemplate()
35- Expect.equal template1 template2 " equal"
36- testCase " not equal" <| fun _ ->
37- let template1 = create_ TestTemplate()
38- let template2 = create_ TestTemplate()
39- template2.Name <- " New Name"
40- Expect.notEqual template1 template2 " not equal"
41- ]
42- testList " structural equality" [
43- testCase " equal" <| fun _ ->
44- let template1 = create_ TestTemplate()
45- let template2 = create_ TestTemplate()
46- let equals = template1.StructurallyEquals( template2)
47- Expect.isTrue equals " equal"
48- testCase " not equal" <| fun _ ->
49- let template1 = create_ TestTemplate()
50- let template2 = create_ TestTemplate()
51- template2.Name <- " New Name"
52- let equals = template1.StructurallyEquals( template2)
53- Expect.isFalse equals " not equal"
54- ]
55- testList " reference equality" [
56- testCase " not same object" <| fun _ ->
57- let template1 = create_ TestTemplate()
58- let template2 = create_ TestTemplate()
59- let equals = template1.ReferenceEquals( template2)
60- Expect.isFalse equals " "
61- testCase " same object" <| fun _ ->
62- let template1 = create_ TestTemplate()
63- let equals = template1.ReferenceEquals( template1)
64- Expect.isTrue equals " "
65- ]
66- ]
67-
68- let private tests_HashCode =
69- testList " hashcode" [
70- testCase " equal" <| fun _ ->
71- let template1 = create_ TestTemplate()
72- let template2 = create_ TestTemplate()
73- let hash1 = template1.GetHashCode()
74- let hash2 = template2.GetHashCode()
75- Expect.equal hash1 hash2 " equal"
76- testCase " not equal" <| fun _ ->
77- let template1 = create_ TestTemplate()
78- let template2 = create_ TestTemplate()
79- template2.Name <- " New Name"
80- let hash1 = template1.GetHashCode()
81- let hash2 = template2.GetHashCode()
82- Expect.notEqual hash1 hash2 " not equal"
83- ]
84-
8511let private tests_Web = testList " Web" [
8612 testCaseAsync " getTemplates" <| async {
8713 let! templatesMap = ARCtrl.Template.Web.getTemplates( None)
8814 Expect.isTrue ( templatesMap.Count > 0 ) " Count > 0"
8915 }
9016]
9117
92- let private tests_filters = testList " filters" [
93- let create_TestTemplate () =
94- let guid = System.Guid( String.init 32 ( fun _ -> " d" ))
95- Template.make
96- guid
97- ( ArcTable.init( " TestTable" ))
98- " My Template"
99- " My Template is great"
100- DataPLANT
101- " 1.0.3"
102- ( ResizeArray [| Person( firstName= " John" , lastName= " Doe" )|])
103- ( ResizeArray [| OntologyAnnotation " PRIDE" ;|])
104- ( ResizeArray [| OntologyAnnotation " Protein" ; OntologyAnnotation " DNA" ;|])
105- ( System.DateTime( 2023 , 09 , 19 ))
106- // this testList is representative to filterByEndpointRepositories
107- testList " filterByTags" [
108- testCase " OR, contains all" <| fun _ ->
109- let templates = ResizeArray [| create_ TestTemplate()|]
110- let queryTags = ResizeArray [| OntologyAnnotation " DNA" |]
111- let actual = Templates.filterByTags( queryTags) templates
112- let expected = 1
113- Expect.equal actual.Count expected " "
114- testCase " OR, contains different" <| fun _ ->
115- let templates = ResizeArray [| create_ TestTemplate()|]
116- let queryTags = ResizeArray [| OntologyAnnotation " DNA" ; OntologyAnnotation " RNA" |]
117- let actual = Templates.filterByTags( queryTags) templates
118- let expected = 1
119- Expect.equal actual.Count expected " "
120- testCase " AND, contains some" <| fun _ ->
121- let templates = ResizeArray [| create_ TestTemplate()|]
122- let queryTags = ResizeArray [| OntologyAnnotation " DNA" |]
123- let actual = Templates.filterByTags( queryTags, true ) templates
124- let expected = 1
125- Expect.equal actual.Count expected " "
126- testCase " AND, contains all" <| fun _ ->
127- let templates = ResizeArray [| create_ TestTemplate()|]
128- let queryTags = ResizeArray [| OntologyAnnotation " DNA" ; OntologyAnnotation " Protein" ;|]
129- let actual = Templates.filterByTags( queryTags, true ) templates
130- let expected = 1
131- Expect.equal actual.Count expected " "
132- testCase " AND, contains different" <| fun _ ->
133- let templates = ResizeArray [| create_ TestTemplate()|]
134- let queryTags = ResizeArray [| OntologyAnnotation " DNA" ; OntologyAnnotation " RNA" |]
135- let actual = Templates.filterByTags( queryTags, true ) templates
136- let expected = 0
137- Expect.equal actual.Count expected " "
138- ]
139- testList " filterByOntologyAnnotations" [
140- testCase " OR, contains tag" <| fun _ ->
141- let templates = ResizeArray [| create_ TestTemplate()|]
142- let queryTags = ResizeArray [| OntologyAnnotation " DNA" |]
143- let actual = Templates.filterByOntologyAnnotation( queryTags) templates
144- let expected = 1
145- Expect.equal actual.Count expected " "
146- testCase " OR, contains er" <| fun _ ->
147- let templates = ResizeArray [| create_ TestTemplate()|]
148- let queryTags = ResizeArray [| OntologyAnnotation " PRIDE" |]
149- let actual = Templates.filterByOntologyAnnotation( queryTags) templates
150- let expected = 1
151- Expect.equal actual.Count expected " "
152- testCase " OR, contains combined" <| fun _ ->
153- let templates = ResizeArray [| create_ TestTemplate()|]
154- let queryTags = ResizeArray [| OntologyAnnotation " PRIDE" ; OntologyAnnotation " DNA" |]
155- let actual = Templates.filterByOntologyAnnotation( queryTags) templates
156- let expected = 1
157- Expect.equal actual.Count expected " "
158- testCase " OR, contains different" <| fun _ ->
159- let templates = ResizeArray [| create_ TestTemplate()|]
160- let queryTags = ResizeArray [| OntologyAnnotation " DNA" ; OntologyAnnotation " RNA" |]
161- let actual = Templates.filterByOntologyAnnotation( queryTags) templates
162- let expected = 1
163- Expect.equal actual.Count expected " "
164- testCase " AND, contains tag" <| fun _ ->
165- let templates = ResizeArray [| create_ TestTemplate()|]
166- let queryTags = ResizeArray [| OntologyAnnotation " DNA" |]
167- let actual = Templates.filterByOntologyAnnotation( queryTags, true ) templates
168- let expected = 1
169- Expect.equal actual.Count expected " "
170- testCase " AND, contains er" <| fun _ ->
171- let templates = ResizeArray [| create_ TestTemplate()|]
172- let queryTags = ResizeArray [| OntologyAnnotation " PRIDE" |]
173- let actual = Templates.filterByOntologyAnnotation( queryTags, true ) templates
174- let expected = 1
175- Expect.equal actual.Count expected " "
176- testCase " AND, contains combined" <| fun _ ->
177- let templates = ResizeArray [| create_ TestTemplate()|]
178- let queryTags = ResizeArray [| OntologyAnnotation " PRIDE" ; OntologyAnnotation " DNA" |]
179- let actual = Templates.filterByOntologyAnnotation( queryTags, true ) templates
180- let expected = 1
181- Expect.equal actual.Count expected " "
182- testCase " AND, contains different" <| fun _ ->
183- let templates = ResizeArray [| create_ TestTemplate()|]
184- let queryTags = ResizeArray [| OntologyAnnotation " DNA" ; OntologyAnnotation " RNA" |]
185- let actual = Templates.filterByOntologyAnnotation( queryTags, true ) templates
186- let expected = 0
187- Expect.equal actual.Count expected " "
188- ]
189- ]
190-
19118let main = testList " Templates" [
192- tests_ equality
193- tests_ HashCode
19419 tests_ Web
195- tests_ filters
19620]
0 commit comments