444444 @test any (isequal (I), unknowns (rn))
445445end
446446
447+ # Test that Ø (Danish/Norwegian letter), ∅ (empty set), and 0 (zero) are equivalent.
448+ let
449+ rn1 = @reaction_network rn begin
450+ p, Ø --> X
451+ d, X --> Ø
452+ end
453+ rn2 = @reaction_network rn begin
454+ p, ∅ --> X
455+ d, X --> ∅
456+ end
457+ rn3 = @reaction_network rn begin
458+ p, 0 --> X
459+ d, X --> 0
460+ end
461+ rn4 = @reaction_network rn begin
462+ p, Ø --> X
463+ d, X --> ∅
464+ end
465+ rn5 = @reaction_network rn begin
466+ p, Ø --> X
467+ d, X --> 0
468+ end
469+ rn6 = @reaction_network rn begin
470+ p, ∅ --> X
471+ d, X --> 0
472+ end
473+ @test rn1 == rn2 == rn3 == rn4 == rn5 == rn6
474+ end
475+
447476# Tests backwards and bi-directional arrows.
448477let
449478 rn1 = @reaction_network arrowtest begin
472501end
473502
474503# Test that symbols with special meanings are handled properly.
475- let
504+ let
476505 test_network = @reaction_network begin t * k, X --> ∅ end
477506 @test length (species (test_network)) == 1
478507 @test length (parameters (test_network)) == 1
532561 @test_throws Exception @eval @reaction nothing , 0 --> X
533562 @test_throws Exception @eval @reaction Γ, 0 --> X
534563 @test_throws Exception @eval @reaction ∅, 0 --> X
535-
564+
536565 # @reaction macro, symbols that cannot be a reactant.
537566 @test_throws Exception @eval @reaction 1 , 0 --> im
538567 @test_throws Exception @eval @reaction 1 , 0 --> nothing
@@ -541,13 +570,13 @@ let
541570 @test_throws Exception @eval @reaction 1 , 0 --> pi
542571 @test_throws Exception @eval @reaction 1 , 0 --> π
543572 @test_throws Exception @eval @reaction 1 , 0 --> t
544-
573+
545574 # @reaction_network macro, symbols that cannot be in the rate.
546575 @test_throws Exception @eval @reaction_network begin im, 0 --> X end
547576 @test_throws Exception @eval @reaction_network begin nothing , 0 --> X end
548577 @test_throws Exception @eval @reaction_network begin Γ, 0 --> X end
549578 @test_throws Exception @eval @reaction_network begin ∅, 0 --> X end
550-
579+
551580 # @reaction_network macro, symbols that cannot be a reactant.
552581 @test_throws Exception @eval @reaction_network begin 1 , 0 --> im end
553582 @test_throws Exception @eval @reaction_network begin 1 , 0 --> nothing end
561590 @test_throws Exception @eval @reaction_network begin
562591 d, X ⇻ 0
563592 end
564- end
593+ end
0 commit comments