#[test]
fn selection_test_0 () {
let answer: Vec<usize> =
"4 12 22 30 36 50 67 84 97 106 115 120 130 140 151 168 181 187 196 204 213 222 228 245 251 263 281 290 302 314 321 329 346 356 365 379 387 400 409 417 428 438 446 455 465 482 488 501 510 517 525 531 540 550 558 564 574 585 592 601 614 622 631 645 654 663 680 685 694 707 716 723 732 740 746 755 764 781 791 800 818 823 833 842 848 857 864 871 877 890 902 911 919 929 946 957 967 974 991 1000 1012 1026 1039 1048 1057 1067 1075 1086 1094 1102 1119 1128 1136 1152 1160 1170 1178 1187 1195 1204 1211 1220 1226 1243 1257 1266 1277 1287 1297 1306 1323 1332 1345 1358 1376 1385 1403 1413 1422 1428 1445 1462 1475 1483 1501 1518 1536 1541 1549 1559 1568 1577 1594 1611 1617 1630 1647 1665 1678 1684 1690 1707 1716 1726 1733 1740 1752 1758 1764 1773 1786 1792 1798 1805 1814 1822 1830 1843 1852 1861 1871 1880 1897 1906 1916 1921 1934 1940 1948 1956 1962 1975 1987 2004 2013 2026 2033 2039 2047 2056 2068 2081 2098 2103 2113 2130 2136 2153 2166 2172 2193 2199 2207 2213 2230 2239 2247 2259 2276 2292 2300 2313 2319 2329 2346 2352 2362 2370 2378 2391 2400 2408 2417 2426 2435 2444 2457 2465 2479 2488 2498 2505 2512 2526 2531 2540 2549 2558 2568 2575 2581 2590 2599 2616 2622 2631 2640 2646 2659 2677 2686 2693 2703 2714 2726 2735 2743 2752 2760 2768 2781 2790 2803 2813 2820 2827 2837 2849 2857 2866 2875 2885 2898 2906 2920 2927 2936 2942 2952 2960 2970 2981 2990 3000 3008 3016 3022 3031 3039 3047 3055 3064 3070 3076 3085 3102 3110 3120 3128 3141 3150 3158 3165 3178 3189 3207 3213 3223 3229 3242 3251 3259 3276 3285 3290 3299 3316 3325 3343 3353 3371 3377 3394 3411 3424 3432 3441 3459 3467 3475 3483 3492 3501 3510 3527 3536 3542 3555 3564 3582 3592 3601 3610 3619 3629 3642 3649 3656 3662 3668 3674 3682 3690 3704 3714 3721 3739 3745 3758 3766 3783 3792 3802 3819 3831 3839 3848 3856 3866 3875 3883 3895 3906 3915 3924 3937 3949 3960 3967 3977 3986 4003 4013 4025 4034 4039 4049 4067 4080 4097 4109 4120 4126 4135 4144 4152 4169 4187 4196 4209 4222 4229 4237 4249 4257 4265 4273 4281 4290 4299 4307 4317 4325 4333 4350 4361 4370 4375 4388 4396 4401 4409 4422 4429 4436 4449 4462 4470 4480 4486 4499 4516 4524 4532 4539 4545 4555 4564 4582 4591 4599 4607 4615 4624 4635 4647 4656 4663 4671 4680 4694 4704 4717 4725 4733 4741 4749 4758 4775 4783 4792 4805 4812 4819 4828 4838 4846 4855 4863 4874 4891 4907 4915 4922 4939 4947 4953 4962 4972 4980 4989 4999 5008 5026 5033 5041 5054 5064 5081 5092 5098 5108 5117 5134 5143 5160 5174 5180 5189 5198 5205 5214 5223 5231 5241 5254 5264 5281 5293 5302 5315 5328 5340 5349 5355 5364 5372 5382 5391 5399 5412 5426 5438 5446 5459 5465 5474 5487 5497 5509 5518 5531 5537 5545 5554 5563 5572 5589 5595 5601 5618 5626 5636 5649 5656 5663 5676 5682 5691 5700 5713 5723 5732 5739 5756 5762 5772 5782 5787 5800 5813 5822 5830 5836 5842 5850 5862 5868"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("name CA"),answer);
}
#[test]
fn selection_test_1 () {
let answer: Vec<usize> =
"104 105 106 107 108 109 110 111 112 34166 34167 34168 64166 64167 64168"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("resid 10"),answer);
}
#[test]
fn selection_test_2 () {
let answer: Vec<usize> =
"104 105 106 107 108 109 110 111 112"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("same residue as (name CA and resid 10)"),answer);
}
#[test]
fn selection_test_3 () {
let answer: Vec<usize> =
"46 47 48 50 51 63 64 65 66 67 80 81 82 83 84 93 94 95 96 97 98 99 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 129 138 139 140 141 142 144 145 147 149 150 151 152 156 157 190 908 909 910 913 914 917 918 920 921 922 923 924 2549 2550 2551 2553 2554 2555 2575 2576 2577 2579 2580 2581 2582 2583 2584 2585 30807 30811 30866 30867 30868 30887 30888 30889 30890 30891 30892 30896 30968 30969 30970 30992 30993 30994 31007 31009 31032 33743 33744 33745 33803 33804 33805 33810 33866 33979 33983 33984 33985 34017 34064 34065 34066 34136 34137 34138 34139 34140 34141 34166 34167 34168 34187 34188 34189 34223 34224 34225 34256 34257 34258 34267 34280 34281 34282 34807 48863 48864 48865 48896 48897 48898 48971 48972 48973 48986 48988 49019 49020 63722 63723 63724 63746 63748 63765 63785 63786 63787 63806 63807 63808 63833 63834 63835 63873 63893 63894 63895 63905 63906 63907 63931 63953 63954 63955 63962 63963 63964 63994 64040 64041 64042 64052 64053 64054 64104 64109 64111 64122 64166 64167 64168 64184 64185 64186 64218"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("within 0.5 of resid 10"),answer);
}
#[test]
fn selection_test_4 () {
let answer: Vec<usize> =
"178 194 196 200 201 202 203 204 205 206 207 208 209 210 211 212 213 218 243 244 901 903 909 33754 33788 33790 33887 33888 33889 33965 33966 34163 34165 34196 34197 34198 34287 34288 34292 34293 34294 34308 46153 63740 63742 63895 63962 63963 63964 64070 64072 64196 64197 64198"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("within 0.3 of resid 20"),answer);
}
#[test]
fn selection_test_5 () {
let answer: Vec<usize> =
"196 204 213"
.split(" ").map(|x| x.parse::<usize>().unwrap()).collect();
assert_eq!(get_selection_index("name CA and within 0.3 of resid 20"),answer);
}