|
|
|
@ -5956,10 +5956,501 @@ fn check_prelude_lzw() {
|
|
|
|
|
|
|
|
|
|
#[test] |
|
|
|
|
fn check_chem() { |
|
|
|
|
assert_eq!(ve("!c = std:chem:parse :FeH2O; c.first_atomic_number[]"), "1"); |
|
|
|
|
assert!(false, "For each element, make a parse for it appearing alone and one for a combination"); |
|
|
|
|
assert_eq!(ve("!c = std:chem:parse :FeH2O; c.first_elem_info[].atomic_number"), "26"); |
|
|
|
|
assert_eq!(ve(r#" |
|
|
|
|
!sum_formula = std:chem:parse "c14 (h19)2 n o2 cl h"; |
|
|
|
|
$@i sum_formula.for_each_element \$+ _2.atomic_mass * _1 |
|
|
|
|
"#), "287"); |
|
|
|
|
assert_eq!(ve(r#" |
|
|
|
|
!sum_formula = std:chem:parse "c14 (h19)2 n o2 cl h"; |
|
|
|
|
$@f sum_formula.for_each_element \$+ _2.atomic_mass * _1 |
|
|
|
|
"#), "288.921"); |
|
|
|
|
|
|
|
|
|
assert_eq!(ve("std:chem:parse :H1"), "$<Chem:H>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :H9"), "$<Chem:H9>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :H"), "$<Chem:H>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :He"), "$<Chem:He>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Li"), "$<Chem:Li>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Be"), "$<Chem:Be>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :B"), "$<Chem:B>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :C"), "$<Chem:C>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :N"), "$<Chem:N>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :O"), "$<Chem:O>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :F"), "$<Chem:F>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ne"), "$<Chem:Ne>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Na"), "$<Chem:Na>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Mg"), "$<Chem:Mg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Al"), "$<Chem:Al>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Si"), "$<Chem:Si>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :P"), "$<Chem:P>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :S"), "$<Chem:S>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cl"), "$<Chem:Cl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ar"), "$<Chem:Ar>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :K"), "$<Chem:K>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ca"), "$<Chem:Ca>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sc"), "$<Chem:Sc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ti"), "$<Chem:Ti>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :V"), "$<Chem:V>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cr"), "$<Chem:Cr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Mn"), "$<Chem:Mn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Fe"), "$<Chem:Fe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Co"), "$<Chem:Co>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ni"), "$<Chem:Ni>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cu"), "$<Chem:Cu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Zn"), "$<Chem:Zn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ga"), "$<Chem:Ga>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ge"), "$<Chem:Ge>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :As"), "$<Chem:As>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Se"), "$<Chem:Se>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Br"), "$<Chem:Br>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Kr"), "$<Chem:Kr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Rb"), "$<Chem:Rb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sr"), "$<Chem:Sr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Y"), "$<Chem:Y>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Zr"), "$<Chem:Zr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Nb"), "$<Chem:Nb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Mo"), "$<Chem:Mo>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Tc"), "$<Chem:Tc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ru"), "$<Chem:Ru>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Rh"), "$<Chem:Rh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pd"), "$<Chem:Pd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ag"), "$<Chem:Ag>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cd"), "$<Chem:Cd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :In"), "$<Chem:In>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sn"), "$<Chem:Sn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sb"), "$<Chem:Sb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Te"), "$<Chem:Te>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :I"), "$<Chem:I>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Xe"), "$<Chem:Xe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cs"), "$<Chem:Cs>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ba"), "$<Chem:Ba>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :La"), "$<Chem:La>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ce"), "$<Chem:Ce>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pr"), "$<Chem:Pr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Nd"), "$<Chem:Nd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pm"), "$<Chem:Pm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sm"), "$<Chem:Sm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Eu"), "$<Chem:Eu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Gd"), "$<Chem:Gd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Tb"), "$<Chem:Tb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Dy"), "$<Chem:Dy>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ho"), "$<Chem:Ho>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Er"), "$<Chem:Er>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Tm"), "$<Chem:Tm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Yb"), "$<Chem:Yb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Lu"), "$<Chem:Lu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Hf"), "$<Chem:Hf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ta"), "$<Chem:Ta>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :W"), "$<Chem:W>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Re"), "$<Chem:Re>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Os"), "$<Chem:Os>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ir"), "$<Chem:Ir>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pt"), "$<Chem:Pt>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Au"), "$<Chem:Au>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Hg"), "$<Chem:Hg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Tl"), "$<Chem:Tl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pb"), "$<Chem:Pb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Bi"), "$<Chem:Bi>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Po"), "$<Chem:Po>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :At"), "$<Chem:At>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Rn"), "$<Chem:Rn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Fr"), "$<Chem:Fr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ra"), "$<Chem:Ra>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ac"), "$<Chem:Ac>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Th"), "$<Chem:Th>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pa"), "$<Chem:Pa>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :U"), "$<Chem:U>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Np"), "$<Chem:Np>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Pu"), "$<Chem:Pu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Am"), "$<Chem:Am>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cm"), "$<Chem:Cm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Bk"), "$<Chem:Bk>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cf"), "$<Chem:Cf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Es"), "$<Chem:Es>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Fm"), "$<Chem:Fm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Md"), "$<Chem:Md>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :No"), "$<Chem:No>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Lr"), "$<Chem:Lr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Rf"), "$<Chem:Rf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Db"), "$<Chem:Db>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Sg"), "$<Chem:Sg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Bh"), "$<Chem:Bh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Hs"), "$<Chem:Hs>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Mt"), "$<Chem:Mt>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ds"), "$<Chem:Ds>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Rg"), "$<Chem:Rg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Cn"), "$<Chem:Cn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Nh"), "$<Chem:Nh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Fl"), "$<Chem:Fl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Mc"), "$<Chem:Mc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Lv"), "$<Chem:Lv>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Ts"), "$<Chem:Ts>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :Og"), "$<Chem:Og>"); |
|
|
|
|
|
|
|
|
|
assert_eq!(ve("std:chem:parse :h"), "$<Chem:H>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :he"), "$<Chem:He>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :li"), "$<Chem:Li>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :be"), "$<Chem:Be>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :b"), "$<Chem:B>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :c"), "$<Chem:C>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :n"), "$<Chem:N>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :o"), "$<Chem:O>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :f"), "$<Chem:F>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ne"), "$<Chem:Ne>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :na"), "$<Chem:Na>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :mg"), "$<Chem:Mg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :al"), "$<Chem:Al>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :si"), "$<Chem:Si>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :p"), "$<Chem:P>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :s"), "$<Chem:S>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cl"), "$<Chem:Cl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ar"), "$<Chem:Ar>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :k"), "$<Chem:K>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ca"), "$<Chem:Ca>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sc"), "$<Chem:Sc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ti"), "$<Chem:Ti>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :v"), "$<Chem:V>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cr"), "$<Chem:Cr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :mn"), "$<Chem:Mn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :fe"), "$<Chem:Fe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :co"), "$<Chem:Co>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ni"), "$<Chem:Ni>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cu"), "$<Chem:Cu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :zn"), "$<Chem:Zn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ga"), "$<Chem:Ga>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ge"), "$<Chem:Ge>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :as"), "$<Chem:As>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :se"), "$<Chem:Se>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :br"), "$<Chem:Br>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :kr"), "$<Chem:Kr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :rb"), "$<Chem:Rb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sr"), "$<Chem:Sr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :y"), "$<Chem:Y>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :zr"), "$<Chem:Zr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :nb"), "$<Chem:Nb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :mo"), "$<Chem:Mo>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :tc"), "$<Chem:Tc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ru"), "$<Chem:Ru>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :rh"), "$<Chem:Rh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pd"), "$<Chem:Pd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ag"), "$<Chem:Ag>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cd"), "$<Chem:Cd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :in"), "$<Chem:In>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sn"), "$<Chem:Sn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sb"), "$<Chem:Sb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :te"), "$<Chem:Te>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :i"), "$<Chem:I>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :xe"), "$<Chem:Xe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cs"), "$<Chem:Cs>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ba"), "$<Chem:Ba>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :la"), "$<Chem:La>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ce"), "$<Chem:Ce>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pr"), "$<Chem:Pr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :nd"), "$<Chem:Nd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pm"), "$<Chem:Pm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sm"), "$<Chem:Sm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :eu"), "$<Chem:Eu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :gd"), "$<Chem:Gd>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :tb"), "$<Chem:Tb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :dy"), "$<Chem:Dy>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ho"), "$<Chem:Ho>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :er"), "$<Chem:Er>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :tm"), "$<Chem:Tm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :yb"), "$<Chem:Yb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :lu"), "$<Chem:Lu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :hf"), "$<Chem:Hf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ta"), "$<Chem:Ta>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :w"), "$<Chem:W>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :re"), "$<Chem:Re>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :os"), "$<Chem:Os>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ir"), "$<Chem:Ir>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pt"), "$<Chem:Pt>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :au"), "$<Chem:Au>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :hg"), "$<Chem:Hg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :tl"), "$<Chem:Tl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pb"), "$<Chem:Pb>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :bi"), "$<Chem:Bi>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :po"), "$<Chem:Po>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :at"), "$<Chem:At>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :rn"), "$<Chem:Rn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :fr"), "$<Chem:Fr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ra"), "$<Chem:Ra>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ac"), "$<Chem:Ac>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :th"), "$<Chem:Th>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pa"), "$<Chem:Pa>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :u"), "$<Chem:U>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :np"), "$<Chem:Np>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :pu"), "$<Chem:Pu>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :am"), "$<Chem:Am>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cm"), "$<Chem:Cm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :bk"), "$<Chem:Bk>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cf"), "$<Chem:Cf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :es"), "$<Chem:Es>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :fm"), "$<Chem:Fm>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :md"), "$<Chem:Md>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :no"), "$<Chem:No>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :lr"), "$<Chem:Lr>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :rf"), "$<Chem:Rf>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :db"), "$<Chem:Db>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :sg"), "$<Chem:Sg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :bh"), "$<Chem:Bh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :hs"), "$<Chem:Hs>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :mt"), "$<Chem:Mt>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ds"), "$<Chem:Ds>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :rg"), "$<Chem:Rg>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :cn"), "$<Chem:Cn>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :nh"), "$<Chem:Nh>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :fl"), "$<Chem:Fl>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :mc"), "$<Chem:Mc>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :lv"), "$<Chem:Lv>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ts"), "$<Chem:Ts>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :og"), "$<Chem:Og>"); |
|
|
|
|
|
|
|
|
|
assert_eq!(ve("std:chem:parse :OHFe"), "$<Chem:OHFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OHeFe"), "$<Chem:OHeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OLiFe"), "$<Chem:OLiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBeFe"), "$<Chem:OBeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBFe"), "$<Chem:OBFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCFe"), "$<Chem:OCFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONFe"), "$<Chem:ONFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OOFe"), "$<Chem:OOFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OFFe"), "$<Chem:OFFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONeFe"), "$<Chem:ONeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONaFe"), "$<Chem:ONaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMgFe"), "$<Chem:OMgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAlFe"), "$<Chem:OAlFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSiFe"), "$<Chem:OSiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPFe"), "$<Chem:OPFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSFe"), "$<Chem:OSFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OClFe"), "$<Chem:OClFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OArFe"), "$<Chem:OArFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OKFe"), "$<Chem:OKFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCaFe"), "$<Chem:OCaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OScFe"), "$<Chem:OScFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTiFe"), "$<Chem:OTiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OVFe"), "$<Chem:OVFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCrFe"), "$<Chem:OCrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMnFe"), "$<Chem:OMnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OFeFe"), "$<Chem:OFeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCoFe"), "$<Chem:OCoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONiFe"), "$<Chem:ONiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCuFe"), "$<Chem:OCuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OZnFe"), "$<Chem:OZnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGaFe"), "$<Chem:OGaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGeFe"), "$<Chem:OGeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAsFe"), "$<Chem:OAsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSeFe"), "$<Chem:OSeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBrFe"), "$<Chem:OBrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OKrFe"), "$<Chem:OKrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORbFe"), "$<Chem:ORbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSrFe"), "$<Chem:OSrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OYFe"), "$<Chem:OYFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OZrFe"), "$<Chem:OZrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONbFe"), "$<Chem:ONbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMoFe"), "$<Chem:OMoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTcFe"), "$<Chem:OTcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORuFe"), "$<Chem:ORuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORhFe"), "$<Chem:ORhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPdFe"), "$<Chem:OPdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAgFe"), "$<Chem:OAgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCdFe"), "$<Chem:OCdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OInFe"), "$<Chem:OInFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSnFe"), "$<Chem:OSnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSbFe"), "$<Chem:OSbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTeFe"), "$<Chem:OTeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OIFe"), "$<Chem:OIFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OXeFe"), "$<Chem:OXeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCsFe"), "$<Chem:OCsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBaFe"), "$<Chem:OBaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OLaFe"), "$<Chem:OLaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCeFe"), "$<Chem:OCeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPrFe"), "$<Chem:OPrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONdFe"), "$<Chem:ONdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPmFe"), "$<Chem:OPmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSmFe"), "$<Chem:OSmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OEuFe"), "$<Chem:OEuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGdFe"), "$<Chem:OGdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTbFe"), "$<Chem:OTbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ODyFe"), "$<Chem:ODyFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OHoFe"), "$<Chem:OHoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OErFe"), "$<Chem:OErFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTmFe"), "$<Chem:OTmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OYbFe"), "$<Chem:OYbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OLuFe"), "$<Chem:OLuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OHfFe"), "$<Chem:OHfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTaFe"), "$<Chem:OTaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OWFe"), "$<Chem:OWFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OReFe"), "$<Chem:OReFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OOsFe"), "$<Chem:OOsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OIrFe"), "$<Chem:OIrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPtFe"), "$<Chem:OPtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAuFe"), "$<Chem:OAuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OHgFe"), "$<Chem:OHgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTlFe"), "$<Chem:OTlFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPbFe"), "$<Chem:OPbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBiFe"), "$<Chem:OBiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPoFe"), "$<Chem:OPoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAtFe"), "$<Chem:OAtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORnFe"), "$<Chem:ORnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OFrFe"), "$<Chem:OFrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORaFe"), "$<Chem:ORaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAcFe"), "$<Chem:OAcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OThFe"), "$<Chem:OThFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPaFe"), "$<Chem:OPaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OUFe"), "$<Chem:OUFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONpFe"), "$<Chem:ONpFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OPuFe"), "$<Chem:OPuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OAmFe"), "$<Chem:OAmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCmFe"), "$<Chem:OCmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBkFe"), "$<Chem:OBkFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCfFe"), "$<Chem:OCfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OEsFe"), "$<Chem:OEsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OFmFe"), "$<Chem:OFmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMdFe"), "$<Chem:OMdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONoFe"), "$<Chem:ONoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OLrFe"), "$<Chem:OLrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORfFe"), "$<Chem:ORfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ODbFe"), "$<Chem:ODbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSgFe"), "$<Chem:OSgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OBhFe"), "$<Chem:OBhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OHsFe"), "$<Chem:OHsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMtFe"), "$<Chem:OMtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ODsFe"), "$<Chem:ODsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ORgFe"), "$<Chem:ORgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OCnFe"), "$<Chem:OCnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ONhFe"), "$<Chem:ONhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OFlFe"), "$<Chem:OFlFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OMcFe"), "$<Chem:OMcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OLvFe"), "$<Chem:OLvFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OTsFe"), "$<Chem:OTsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OOgFe"), "$<Chem:OOgFe>"); |
|
|
|
|
|
|
|
|
|
assert_eq!(ve("std:chem:parse :OhFe"), "$<Chem:OHFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OheFe"), "$<Chem:OHeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OliFe"), "$<Chem:OLiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObeFe"), "$<Chem:OBeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObFe"), "$<Chem:OBFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcFe"), "$<Chem:OCFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnFe"), "$<Chem:ONFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OoFe"), "$<Chem:OOFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OfFe"), "$<Chem:OFFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OneFe"), "$<Chem:ONeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnaFe"), "$<Chem:ONaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmgFe"), "$<Chem:OMgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OalFe"), "$<Chem:OAlFe>"); |
|
|
|
|
// Osi => Os, I
|
|
|
|
|
assert_eq!(ve("std:chem:parse :OSiFe"), "$<Chem:OSiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OsIFe"), "$<Chem:OsIFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpFe"), "$<Chem:OPFe>"); |
|
|
|
|
// OSFe => OsFe
|
|
|
|
|
assert_eq!(ve("std:chem:parse :OsFe"), "$<Chem:OsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OclFe"), "$<Chem:OClFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OarFe"), "$<Chem:OArFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OkFe"), "$<Chem:OKFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcaFe"), "$<Chem:OCaFe>"); |
|
|
|
|
// OScFe
|
|
|
|
|
assert_eq!(ve("std:chem:parse :OScFe"), "$<Chem:OScFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtiFe"), "$<Chem:OTiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OvFe"), "$<Chem:OVFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcrFe"), "$<Chem:OCrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmnFe"), "$<Chem:OMnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OfeFe"), "$<Chem:OFeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcoFe"), "$<Chem:OCoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OniFe"), "$<Chem:ONiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcuFe"), "$<Chem:OCuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OznFe"), "$<Chem:OZnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGaFe"), "$<Chem:OGaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGeFe"), "$<Chem:OGeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OasFe"), "$<Chem:OAsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSeFe"), "$<Chem:OSeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObrFe"), "$<Chem:OBrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OkrFe"), "$<Chem:OKrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OrbFe"), "$<Chem:ORbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSrFe"), "$<Chem:OSrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OyFe"), "$<Chem:OYFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OzrFe"), "$<Chem:OZrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnbFe"), "$<Chem:ONbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmoFe"), "$<Chem:OMoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtcFe"), "$<Chem:OTcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OruFe"), "$<Chem:ORuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OrhFe"), "$<Chem:ORhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpdFe"), "$<Chem:OPdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OagFe"), "$<Chem:OAgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcdFe"), "$<Chem:OCdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OinFe"), "$<Chem:OInFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSnFe"), "$<Chem:OSnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSbFe"), "$<Chem:OSbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OsnFe"), "$<Chem:OsNFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OsbFe"), "$<Chem:OsBFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OteFe"), "$<Chem:OTeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OiFe"), "$<Chem:OIFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OxeFe"), "$<Chem:OXeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcsFe"), "$<Chem:OCsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObaFe"), "$<Chem:OBaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OlaFe"), "$<Chem:OLaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OceFe"), "$<Chem:OCeFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OprFe"), "$<Chem:OPrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OndFe"), "$<Chem:ONdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpmFe"), "$<Chem:OPmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSmFe"), "$<Chem:OSmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OeuFe"), "$<Chem:OEuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OGdFe"), "$<Chem:OGdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtbFe"), "$<Chem:OTbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OdyFe"), "$<Chem:ODyFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OhoFe"), "$<Chem:OHoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OerFe"), "$<Chem:OErFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtmFe"), "$<Chem:OTmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OybFe"), "$<Chem:OYbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OluFe"), "$<Chem:OLuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OhfFe"), "$<Chem:OHfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtaFe"), "$<Chem:OTaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OwFe"), "$<Chem:OWFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OreFe"), "$<Chem:OReFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OosFe"), "$<Chem:OOsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OirFe"), "$<Chem:OIrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OptFe"), "$<Chem:OPtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OauFe"), "$<Chem:OAuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OhgFe"), "$<Chem:OHgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtlFe"), "$<Chem:OTlFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpbFe"), "$<Chem:OPbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObiFe"), "$<Chem:OBiFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpoFe"), "$<Chem:OPoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OatFe"), "$<Chem:OAtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OrnFe"), "$<Chem:ORnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OfrFe"), "$<Chem:OFrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OraFe"), "$<Chem:ORaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OacFe"), "$<Chem:OAcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OthFe"), "$<Chem:OThFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpaFe"), "$<Chem:OPaFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OuFe"), "$<Chem:OUFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnpFe"), "$<Chem:ONpFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OpuFe"), "$<Chem:OPuFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OamFe"), "$<Chem:OAmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcmFe"), "$<Chem:OCmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObkFe"), "$<Chem:OBkFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcfFe"), "$<Chem:OCfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OesFe"), "$<Chem:OEsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OfmFe"), "$<Chem:OFmFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmdFe"), "$<Chem:OMdFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnoFe"), "$<Chem:ONoFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OlrFe"), "$<Chem:OLrFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OrfFe"), "$<Chem:ORfFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OdbFe"), "$<Chem:ODbFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OSgFe"), "$<Chem:OSgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :ObhFe"), "$<Chem:OBhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OhsFe"), "$<Chem:OHsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmtFe"), "$<Chem:OMtFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OdsFe"), "$<Chem:ODsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OrgFe"), "$<Chem:ORgFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OcnFe"), "$<Chem:OCnFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OnhFe"), "$<Chem:ONhFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OflFe"), "$<Chem:OFlFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OmcFe"), "$<Chem:OMcFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OlvFe"), "$<Chem:OLvFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OtsFe"), "$<Chem:OTsFe>"); |
|
|
|
|
assert_eq!(ve("std:chem:parse :OogFe"), "$<Chem:OOgFe>"); |
|
|
|
|
|
|
|
|
|
assert_eq!(ve("(std:chem:parse :H2OFe3).canonical_hill[]"), "$<Chem:Fe3H2O>"); |
|
|
|
|
assert_eq!(ve("(std:chem:parse :H2Fe3O).canonical[]"), "$<Chem:H2OFe3>"); |
|
|
|
|
assert_eq!(ve("(std:chem:parse :H2Fe3O).canonical[]"), "$<Chem:H2OFe3>"); |
|
|
|
|
assert_eq!(ve(r#"!sum_formula = std:chem:parse "c14 (h19)2 n o2 cl h"; $@i sum_formula.for_each_element \$+ _2.atomic_mass * _1"#), "?"); |
|
|
|
|
} |
|
|
|
|