Skip to content

Commit e4b39c6

Browse files
committed
added test
1 parent 72e3397 commit e4b39c6

File tree

1 file changed

+78
-0
lines changed

1 file changed

+78
-0
lines changed

test/network_analysis/network_properties.jl

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -326,3 +326,81 @@ let
326326
@test Catalyst.iscomplexbalanced(rn, rates) == true
327327
end
328328

329+
### STRONG LINKAGE CLASS TESTS
330+
331+
let
332+
rn = @reaction_network begin
333+
(k1, k2), A <--> B + C
334+
k3, B + C --> D
335+
k4, D --> E
336+
(k5, k6), E <--> 2F
337+
k7, 2F --> D
338+
(k8, k9), D + E <--> G
339+
end
340+
341+
rcs, D = reactioncomplexes(rn)
342+
slcs = stronglinkageclasses(rn)
343+
tslcs = terminallinkageclasses(rn)
344+
@test length(slcs) == 3
345+
@test length(tslcs) == 2
346+
@test issubset([[1,2], [3,4,5], [6,7]], slcs)
347+
@test issubset([[3,4,5], [6,7]], tslcs)
348+
end
349+
350+
let
351+
rn = @reaction_network begin
352+
(k1, k2), A <--> B + C
353+
k3, B + C --> D
354+
k4, D --> E
355+
(k5, k6), E <--> 2F
356+
k7, 2F --> D
357+
(k8, k9), D + E --> G
358+
end
359+
360+
rcs, D = reactioncomplexes(rn)
361+
slcs = stronglinkageclasses(rn)
362+
tslcs = terminallinkageclasses(rn)
363+
@test length(slcs) == 4
364+
@test length(tslcs) == 2
365+
@test issubset([[1,2], [3,4,5], [6], [7]], slcs)
366+
@test issubset([[3,4,5], [7]], tslcs)
367+
end
368+
369+
let
370+
rn = @reaction_network begin
371+
(k1, k2), A <--> B + C
372+
(k3, k4), B + C <--> D
373+
k5, D --> E
374+
(k6, k7), E <--> 2F
375+
k8, 2F --> D
376+
(k9, k10), D + E <--> G
377+
end
378+
379+
rcs, D = reactioncomplexes(rn)
380+
slcs = stronglinkageclasses(rn)
381+
tslcs = terminallinkageclasses(rn)
382+
@test length(slcs) == 2
383+
@test length(tslcs) == 2
384+
@test issubset([[1,2,3,4,5], [6,7]], slcs)
385+
@test issubset([[1,2,3,4,5], [6,7]], tslcs)
386+
end
387+
388+
let
389+
rn = @reaction_network begin
390+
(k1, k2), A <--> 2B
391+
k3, A --> C + D
392+
(k4, k5), C + D <--> E
393+
k6, 2B --> F
394+
(k7, k8), F <--> 2G
395+
(k9, k10), 2G <--> H
396+
k11, H --> F
397+
end
398+
399+
rcs, D = reactioncomplexes(rn)
400+
slcs = stronglinkageclasses(rn)
401+
tslcs = terminallinkageclasses(rn)
402+
@test length(slcs) == 3
403+
@test length(tslcs) == 2
404+
@test issubset([[1,2], [3,4], [5,6,7]], slcs)
405+
@test issubset([[3,4], [5,6,7]], tslcs)
406+
end

0 commit comments

Comments
 (0)