def test_put(self):
        imc_1 = IMCache()
        imc_2 = IMCache()

        combined = CombinedCache(imc_1, imc_2)

        combined.put('a', 1)

        self.assertEqual(imc_1.get('a'), 1)
        self.assertEqual(imc_2.get('a'), 1)
    def test_multiget_update_closer_cache(self):
        imc_1 = IMCache()
        imc_2 = IMCache()

        combined = CombinedCache(imc_1, imc_2)

        imc_2.put('b', 1)

        with self.assertRaises(imc_1.CacheMissException):
            imc_1.get('b')

        self.assertEqual(combined.multiget(['b', 'c']), [1, None])
        self.assertEqual(imc_1.get('b'), 1)