def test_times(self):
        """Test function returns the correct times for the sorted cubes."""

        expected = [
            1510286400, 1510286460, 1510286520, 1510286580, 1510286640,
            1510286700, 1510286760, 1510286820, 1510286880, 1510286940,
            1510287000
        ]
        _, times = Accumulation.sort_cubes_by_time(self.cubes)

        self.assertArrayEqual(times, expected)
    def test_reorders(self):
        """Test function reorders a cubelist that is not time ordered."""

        expected = [cube.coord("time").points[0] for cube in self.cubes]
        self.cubes = self.cubes[::-1]
        reordered = [cube.coord("time").points[0] for cube in self.cubes]

        result, _ = Accumulation.sort_cubes_by_time(self.cubes)
        result_times = [cube.coord("time").points[0] for cube in result]

        self.assertIsInstance(result, iris.cube.CubeList)
        self.assertEqual(result_times, expected)
        self.assertNotEqual(result_times, reordered)
    def test_returns_cubelist(self):
        """Test function returns a cubelist."""

        result, _ = Accumulation.sort_cubes_by_time(self.cubes)
        self.assertIsInstance(result, iris.cube.CubeList)