def test_combine_benefit_groups_no_overlap(self): base_group = {'group1': {'benefit1': {'value': 3, 'currency': 9, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 4, 'currency': 10, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} new_group = {'group2': {'benefit1': {'value': 5, 'currency': 11, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 6, 'currency': 19, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} groups = {} _combine_grouped_benefits(groups, base_group) _combine_grouped_benefits(groups, new_group) target = {'group1': base_group['group1'], 'group2': new_group['group2']} self.assertEqual(groups, target)
def test_combine_benefit_groups_no_overlap(self): base_group = { 'group1': { 'benefit1': { 'value': 3, 'currency': 9, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 4, 'currency': 10, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } new_group = { 'group2': { 'benefit1': { 'value': 5, 'currency': 11, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 6, 'currency': 19, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } groups = {} _combine_grouped_benefits(groups, base_group) _combine_grouped_benefits(groups, new_group) target = { 'group1': base_group['group1'], 'group2': new_group['group2'] } self.assertEqual(groups, target)
def test_combine_benefit_groups_empty(self): # with and without currency base_group = {'group1': {'benefit1': {'value': 3, 'currency': 9, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 3, 'currency': 9, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} groups = {} _combine_grouped_benefits(groups, base_group) self.assertEqual(groups, base_group)
def test_combine_benefit_groups_empty(self): # with and without currency base_group = { 'group1': { 'benefit1': { 'value': 3, 'currency': 9, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 3, 'currency': 9, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } groups = {} _combine_grouped_benefits(groups, base_group) self.assertEqual(groups, base_group)
def test_combine_benefit_groups_sums_benefits(self): base_group = { 'group1': { 'benefit1': { 'value': 3, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 4, 'currency': 10, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit3': { 'value': 32, 'currency': 919, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } new_group = { 'group1': { 'benefit1': { 'value': 5, 'currency': 11, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 7, 'unit': 'gal', 'currency': 19, 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit4': { 'value': 7, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } groups = {} _combine_grouped_benefits(groups, base_group) _combine_grouped_benefits(groups, new_group) target = { 'group1': { 'benefit1': { 'value': 8, 'currency': 11, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit2': { 'value': 11, 'currency': 29, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit3': { 'value': 32, 'currency': 919, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' }, 'benefit4': { 'value': 7, 'unit': 'gal', 'label': BenefitCategory.STORMWATER, 'unit-name': 'eco' } } } self.assertEqual(groups, target)
def test_combine_benefit_groups_sums_benefits(self): base_group = {'group1': {'benefit1': {'value': 3, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 4, 'currency': 10, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit3': {'value': 32, 'currency': 919, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} new_group = {'group1': {'benefit1': {'value': 5, 'currency': 11, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 7, 'unit': 'gal', 'currency': 19, 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit4': {'value': 7, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} groups = {} _combine_grouped_benefits(groups, base_group) _combine_grouped_benefits(groups, new_group) target = {'group1': {'benefit1': {'value': 8, 'currency': 11, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit2': {'value': 11, 'currency': 29, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit3': {'value': 32, 'currency': 919, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}, 'benefit4': {'value': 7, 'unit': 'gal', 'label': 'stormwater', 'unit-name': 'eco'}}} self.assertEqual(groups, target)