|
1 | 1 | # MIT License |
2 | 2 | # |
3 | | -# Copyright (c) 2018-2024 Tskit Developers |
| 3 | +# Copyright (c) 2018-2025 Tskit Developers |
4 | 4 | # Copyright (c) 2017 University of Oxford |
5 | 5 | # |
6 | 6 | # Permission is hereby granted, free of charge, to any person obtaining a copy |
|
30 | 30 | import unittest |
31 | 31 | from unittest import mock |
32 | 32 |
|
33 | | -import h5py |
34 | 33 | import msprime |
35 | 34 | import pytest |
36 | 35 |
|
@@ -311,16 +310,6 @@ def test_vcf_allow_position_zero(self, flags, expected): |
311 | 310 | assert args.tree_sequence == tree_sequence |
312 | 311 | assert args.allow_position_zero == expected |
313 | 312 |
|
314 | | - def test_upgrade_default_values(self): |
315 | | - parser = cli.get_tskit_parser() |
316 | | - cmd = "upgrade" |
317 | | - source = "in.trees" |
318 | | - destination = "out.trees" |
319 | | - args = parser.parse_args([cmd, source, destination]) |
320 | | - assert args.source == source |
321 | | - assert args.destination == destination |
322 | | - assert not args.remove_duplicate_positions |
323 | | - |
324 | 313 | def test_info_default_values(self): |
325 | 314 | parser = cli.get_tskit_parser() |
326 | 315 | cmd = "info" |
@@ -655,68 +644,3 @@ def test_migrations(self): |
655 | 644 |
|
656 | 645 | def test_provenances(self): |
657 | 646 | self.verify("provenances") |
658 | | - |
659 | | - |
660 | | -class TestUpgrade(TestCli): |
661 | | - """ |
662 | | - Tests the results of the upgrade operation to ensure they are |
663 | | - correct. |
664 | | - """ |
665 | | - |
666 | | - def setUp(self): |
667 | | - fd, self.legacy_file_name = tempfile.mkstemp(prefix="msp_cli", suffix=".trees") |
668 | | - os.close(fd) |
669 | | - fd, self.current_file_name = tempfile.mkstemp(prefix="msp_cli", suffix=".trees") |
670 | | - os.close(fd) |
671 | | - |
672 | | - def tearDown(self): |
673 | | - os.unlink(self.legacy_file_name) |
674 | | - os.unlink(self.current_file_name) |
675 | | - |
676 | | - def test_conversion(self): |
677 | | - ts1 = msprime.simulate(10) |
678 | | - for version in [2, 3]: |
679 | | - tskit.dump_legacy(ts1, self.legacy_file_name, version=version) |
680 | | - stdout, stderr = capture_output( |
681 | | - cli.tskit_main, |
682 | | - ["upgrade", self.legacy_file_name, self.current_file_name], |
683 | | - ) |
684 | | - ts2 = tskit.load(self.current_file_name) |
685 | | - assert stdout == "" |
686 | | - assert stderr == "" |
687 | | - # Quick checks to ensure we have the right tree sequence. |
688 | | - # More thorough checks are done elsewhere. |
689 | | - assert ts1.get_sample_size() == ts2.get_sample_size() |
690 | | - assert ts1.num_edges == ts2.num_edges |
691 | | - assert ts1.get_num_trees() == ts2.get_num_trees() |
692 | | - |
693 | | - def test_duplicate_positions(self): |
694 | | - ts = msprime.simulate(10, mutation_rate=10) |
695 | | - for version in [2, 3]: |
696 | | - tskit.dump_legacy(ts, self.legacy_file_name, version=version) |
697 | | - root = h5py.File(self.legacy_file_name, "r+") |
698 | | - root["mutations/position"][:] = 0 |
699 | | - root.close() |
700 | | - stdout, stderr = capture_output( |
701 | | - cli.tskit_main, |
702 | | - ["upgrade", "-d", self.legacy_file_name, self.current_file_name], |
703 | | - ) |
704 | | - assert stdout == "" |
705 | | - tsp = tskit.load(self.current_file_name) |
706 | | - assert tsp.sample_size == ts.sample_size |
707 | | - assert tsp.num_sites == 1 |
708 | | - |
709 | | - def test_duplicate_positions_error(self): |
710 | | - ts = msprime.simulate(10, mutation_rate=10) |
711 | | - for version in [2, 3]: |
712 | | - tskit.dump_legacy(ts, self.legacy_file_name, version=version) |
713 | | - root = h5py.File(self.legacy_file_name, "r+") |
714 | | - root["mutations/position"][:] = 0 |
715 | | - root.close() |
716 | | - with mock.patch("sys.exit", side_effect=TestException) as mocked_exit: |
717 | | - with pytest.raises(TestException): |
718 | | - capture_output( |
719 | | - cli.tskit_main, |
720 | | - ["upgrade", self.legacy_file_name, self.current_file_name], |
721 | | - ) |
722 | | - assert mocked_exit.call_count == 1 |
0 commit comments