test_density.py 1.11 KB
Newer Older
# coding=utf-8
from unittest import TestCase

from mock import Mock

from earthdiagnostics.ocean.density import Density


class TestHeatContent(TestCase):
    def setUp(self):
        self.data_manager = Mock()

        self.diags = Mock()
        self.diags.model_version = "model_version"
        self.diags.config.experiment.get_chunk_list.return_value = (
            ("20010101", 0, 0),
            ("20010101", 0, 1),
        )

    def test_generate_jobs(self):
        jobs = Density.generate_jobs(
            self.diags, ["diagnostic"]
        )
        self.assertEqual(len(jobs), 2)
        self.assertEqual(
            jobs[0],
            Density(self.data_manager, "20010101", 0, 0)
        )
        self.assertEqual(
            jobs[1],
            Density(self.data_manager, "20010101", 0, 1)
        )

        with self.assertRaises(Exception):
            Density.generate_jobs(self.diags, ["diagnostic", "0"])

    def test_str(self):
        diag = Density(self.data_manager, "20010101", 0, 0)
        self.assertEqual(
            str(diag),
            "Density Startdate: 20010101 Member: 0 Chunk: 0"
        )