def setUp(self): self.renderer = Renderer(self.layer['portal'], self.layer['request'], None, None, {}) year = 2014 month = 5 self.renderer.update() calendar = self.renderer.calendar last_day = calendar._getCalendar().monthrange(year, month)[1] self.first_date = calendar.getBeginAndEndTimes(1, month, year)[0] self.last_date = calendar.getBeginAndEndTimes(last_day, month, year)[1] self.renderer.year = year self.renderer.month = month
class TestRendererBase(unittest.TestCase): layer = INTEGRATION_TESTING def setUp(self): self.renderer = Renderer(self.layer['portal'], self.layer['request'], None, None, {}) year = 2014 month = 5 self.renderer.update() calendar = self.renderer.calendar last_day = calendar._getCalendar().monthrange(year, month)[1] self.first_date = calendar.getBeginAndEndTimes(1, month, year)[0] self.last_date = calendar.getBeginAndEndTimes(last_day, month, year)[1] self.renderer.year = year self.renderer.month = month def test_fix_range_criteria_start(self): renderer = self.renderer d1 = DateTime('2014/05/10') renderer.options = {'start': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('start') self.assertEqual( renderer.options, {'start': { 'query': [d1, self.last_date], 'range': 'minmax' }}) d1 = DateTime('2014/05/25') renderer.options = {'start': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('start') self.assertEqual( renderer.options, {'start': { 'query': [d1, self.last_date], 'range': 'max' }}) d1 = DateTime('2014/05/10') d2 = DateTime('2014/06/08') renderer.options = {'start': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('start') self.assertEqual( renderer.options, {'start': { 'query': [d1, self.last_date], 'range': 'minmax' }}) def test_fix_range_criteria_start_new_collection(self): # WTF: new style collections are returning "strings" renderer = self.renderer d1 = '2014/05/10' renderer.options = {'start': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, { 'start': { 'query': [DateTime(d1), self.last_date], 'range': 'minmax' } }) d1 = DateTime('2014/05/25') renderer.options = {'start': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('start') self.assertEqual( renderer.options, {'start': { 'query': [d1, self.last_date], 'range': 'max' }}) d1 = DateTime('2014/05/10') d2 = DateTime('2014/06/08') renderer.options = {'start': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('start') self.assertEqual( renderer.options, {'start': { 'query': [d1, self.last_date], 'range': 'minmax' }}) def test_fix_range_criteria_end(self): renderer = self.renderer d1 = DateTime('2014/05/20') renderer.options = {'end': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('end') self.assertEqual( renderer.options, {'end': { 'query': [d1, self.first_date], 'range': 'minmax' }}) d1 = DateTime('2014/05/15') renderer.options = {'end': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('end') self.assertEqual( renderer.options, {'end': { 'query': [d1, self.first_date], 'range': 'min' }}) d1 = DateTime('2014/02/05') d2 = DateTime('2014/05/15') renderer.options = {'end': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('end') self.assertEqual( renderer.options, {'end': { 'query': [d2, self.first_date], 'range': 'minmax' }})
class TestRendererBase(unittest.TestCase): layer = INTEGRATION_TESTING def setUp(self): self.renderer = Renderer(self.layer['portal'], self.layer['request'], None, None, {}) year = 2014 month = 5 self.renderer.update() calendar = self.renderer.calendar last_day = calendar._getCalendar().monthrange(year, month)[1] self.first_date = calendar.getBeginAndEndTimes(1, month, year)[0] self.last_date = calendar.getBeginAndEndTimes(last_day, month, year)[1] self.renderer.year = year self.renderer.month = month def test_fix_range_criteria_start(self): renderer = self.renderer d1 = DateTime('2014/05/10') renderer.options = {'start': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [d1, self.last_date], 'range': 'minmax'}}) d1 = DateTime('2014/05/25') renderer.options = {'start': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [d1, self.last_date], 'range': 'max'}}) d1 = DateTime('2014/05/10') d2 = DateTime('2014/06/08') renderer.options = {'start': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [d1, self.last_date], 'range': 'minmax'}}) def test_fix_range_criteria_start_new_collection(self): # WTF: new style collections are returning "strings" renderer = self.renderer d1 = '2014/05/10' renderer.options = {'start': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [DateTime(d1), self.last_date], 'range': 'minmax'}}) d1 = DateTime('2014/05/25') renderer.options = {'start': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [d1, self.last_date], 'range': 'max'}}) d1 = DateTime('2014/05/10') d2 = DateTime('2014/06/08') renderer.options = {'start': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('start') self.assertEqual(renderer.options, {'start': {'query': [d1, self.last_date], 'range': 'minmax'}}) def test_fix_range_criteria_end(self): renderer = self.renderer d1 = DateTime('2014/05/20') renderer.options = {'end': {'query': d1, 'range': 'max'}} renderer._fix_range_criteria('end') self.assertEqual(renderer.options, {'end': {'query': [d1, self.first_date], 'range': 'minmax'}}) d1 = DateTime('2014/05/15') renderer.options = {'end': {'query': d1, 'range': 'min'}} renderer._fix_range_criteria('end') self.assertEqual(renderer.options, {'end': {'query': [d1, self.first_date], 'range': 'min'}}) d1 = DateTime('2014/02/05') d2 = DateTime('2014/05/15') renderer.options = {'end': {'query': [d1, d2], 'range': 'minmax'}} renderer._fix_range_criteria('end') self.assertEqual(renderer.options, {'end': {'query': [d2, self.first_date], 'range': 'minmax'}})