def test_add_cache_multiple_region(self):
        from pyramid_beaker_elasticache import set_cache_regions_from_settings
        import beaker
        settings = self._set_settings()
        beaker.cache.cache_regions = {}
        settings['cache.regions'] = 'default_term, short_term'
        settings['cache.lock_dir'] = 'foo'
        settings['cache.short_term.expire'] = '60'
        settings['cache.default_term.type'] = 'file'
        settings['cache.default_term.expire'] = '300'
        settings['cache.default_term.enabled'] = 'false'
        set_cache_regions_from_settings(settings)
        default_term = beaker.cache.cache_regions.get('default_term')
        short_term = beaker.cache.cache_regions.get('short_term')
        self.assertEqual(short_term.get('expire'),
                         int(settings['cache.short_term.expire']))
        self.assertEqual(short_term.get('lock_dir'), settings['cache.lock_dir'])
        self.assertEqual(short_term.get('type'), 'memory')
        self.assertTrue(short_term.get('enabled'))

        self.assertEqual(default_term.get('expire'),
                         int(settings['cache.default_term.expire']))
        self.assertEqual(default_term.get('lock_dir'),
                         settings['cache.lock_dir'])
        self.assertEqual(default_term.get('type'),
                         settings['cache.default_term.type'])
        self.assertFalse(default_term.get('enabled'))
 def test_add_cache_no_regions(self):
     from pyramid_beaker_elasticache import set_cache_regions_from_settings
     import beaker
     settings = self._set_settings()
     beaker.cache.cache_regions = {}
     settings['cache.regions'] = ''
     set_cache_regions_from_settings(settings)
     self.assertEqual(beaker.cache.cache_regions, {})
 def test_region_inherit_enabled(self):
     from pyramid_beaker_elasticache import set_cache_regions_from_settings
     import beaker
     settings = self._set_settings()
     settings['cache.enabled'] = 'false'
     beaker.cache.cache_regions = {}
     set_cache_regions_from_settings(settings)
     default_term = beaker.cache.cache_regions.get('default_term')
     short_term = beaker.cache.cache_regions.get('short_term')
     self.assertFalse(short_term.get('enabled'))
     self.assertFalse(default_term.get('enabled'))
 def test_add_cache_single_region_no_expire(self):
     from pyramid_beaker_elasticache import set_cache_regions_from_settings
     import beaker
     settings = self._set_settings()
     beaker.cache.cache_regions = {}
     settings['cache.regions'] = 'default_term'
     del settings['cache.default_term.expire']
     set_cache_regions_from_settings(settings)
     default_term = beaker.cache.cache_regions.get('default_term')
     self.assertEqual(default_term,
                      {'url': None, 'expire': 60, 'type': 'memory',
                       'lock_dir': None, 'data_dir': None, 'enabled': True,
                       'key_length': 250})
 def test_region_inherit_url(self):
     from pyramid_beaker_elasticache import set_cache_regions_from_settings
     import beaker
     settings = self._set_settings()
     beaker.cache.cache_regions = {}
     settings['cache.regions'] = 'default_term, short_term'
     settings['cache.lock_dir'] = 'foo'
     settings['cache.url'] = '127.0.0.1'
     settings['cache.short_term.expire'] = '60'
     settings['cache.default_term.type'] = 'file'
     settings['cache.default_term.expire'] = '300'
     set_cache_regions_from_settings(settings)
     default_term = beaker.cache.cache_regions.get('default_term')
     short_term = beaker.cache.cache_regions.get('short_term')
     self.assertEqual(short_term.get('url'), settings['cache.url'])
     self.assertEqual(default_term.get('url'), settings['cache.url'])