(self)
| 658 | |
| 659 | @pytest.mark.vcr() |
| 660 | def test_sort(self): |
| 661 | rows = [ |
| 662 | ["Apple", "2012", "4"], |
| 663 | ["Banana", "2013", "3"], |
| 664 | ["Canada", "2007", "1"], |
| 665 | ["Dinosaur", "2013", "6"], |
| 666 | ["Elephant", "2019", "2"], |
| 667 | ["Fox", "2077", "5"], |
| 668 | ] |
| 669 | |
| 670 | self.sheet.resize(6, 3) |
| 671 | cell_list = self.sheet.range("A1:C6") |
| 672 | for c, v in zip(cell_list, itertools.chain(*rows)): |
| 673 | c.value = v |
| 674 | self.sheet.update_cells(cell_list) |
| 675 | |
| 676 | specs = [ |
| 677 | (3, "asc"), |
| 678 | ] |
| 679 | self.sheet.sort(*specs, range="A1:C6") |
| 680 | rows = sorted(rows, key=lambda x: int(x[2]), reverse=False) |
| 681 | self.assertEqual(self.sheet.get_all_values(), rows) |
| 682 | |
| 683 | specs = [ |
| 684 | (1, "des"), |
| 685 | ] |
| 686 | self.sheet.sort(*specs, range="A1:C6") |
| 687 | rows = sorted(rows, key=lambda x: x[0], reverse=True) |
| 688 | self.assertEqual(self.sheet.get_all_values(), rows) |
| 689 | |
| 690 | specs = [ |
| 691 | (2, "asc"), |
| 692 | (3, "asc"), |
| 693 | ] |
| 694 | self.sheet.sort(*specs, range="A1:C6") |
| 695 | rows = sorted(rows, key=lambda x: (x[1], int(x[2])), reverse=False) |
| 696 | self.assertEqual(self.sheet.get_all_values(), rows) |
| 697 | |
| 698 | specs = [ |
| 699 | (3, "asc"), |
| 700 | ] |
| 701 | self.sheet.sort(*specs) |
| 702 | rows = sorted(rows, key=lambda x: int(x[2]), reverse=False) |
| 703 | self.assertEqual(self.sheet.get_all_values(), rows) |
| 704 | |
| 705 | specs = [ |
| 706 | (3, "des"), |
| 707 | ] |
| 708 | self.sheet._properties["gridProperties"]["frozenRowCount"] = 1 |
| 709 | self.sheet.sort(*specs) |
| 710 | rows = [rows[0]] + sorted(rows[1:], key=lambda x: int(x[2]), reverse=True) |
| 711 | self.assertEqual(self.sheet.get_all_values(), rows) |
| 712 | |
| 713 | @pytest.mark.vcr() |
| 714 | def test_freeze(self): |
nothing calls this directly
no test coverage detected