def test_dict_org(self):
        """_dict_org turns our org structure into a json payload."""
        expected_single_org_payload = {
            "sub_orgs": [],
            "owners": [
                {"first_name": u"Johnny", "last_name": u"Energy", "email": u"*****@*****.**", "id": self.user.pk}
            ],
            "number_of_users": 1,
            "name": "my org",
            "user_role": "owner",
            "is_parent": True,
            "org_id": self.org.pk,
            "id": self.org.pk,
            "user_is_owner": True,
            "num_buildings": 0,
        }

        org_payload = _dict_org(self.fake_request, [self.org])

        self.assertEqual(len(org_payload), 1)
        self.assertDictEqual(org_payload[0], expected_single_org_payload)

        # Now let's make sure that we pick up related buildings correctly.
        for x in range(10):
            can = CanonicalBuilding.objects.create()
            snap = BuildingSnapshot.objects.create()
            snap.super_organization = self.org
            snap.save()

            can.canonical_snapshot = snap
            can.save()

        expected_single_org_payload["num_buildings"] = 10
        self.assertDictEqual(_dict_org(self.fake_request, [self.org])[0], expected_single_org_payload)
Beispiel #2
0
    def test_dict_org(self):
        """_dict_org turns our org structure into a json payload."""
        expected_single_org_payload = {
            'sub_orgs': [],
            'owners': [{
                'first_name': u'Johnny',
                'last_name': u'Energy',
                'email': u'*****@*****.**',
                'id': self.user.pk
            }],
            'number_of_users':
            1,
            'name':
            'my org',
            'user_role':
            'owner',
            'is_parent':
            True,
            'org_id':
            self.org.pk,
            'id':
            self.org.pk,
            'user_is_owner':
            True,
            'num_buildings':
            0
        }

        org_payload = _dict_org(self.fake_request, [self.org])

        self.assertEqual(len(org_payload), 1)
        self.assertDictEqual(org_payload[0], expected_single_org_payload)

        # Now let's make sure that we pick up related buildings correctly.
        for x in range(10):
            can = CanonicalBuilding.objects.create()
            snap = BuildingSnapshot.objects.create()
            snap.super_organization = self.org
            snap.save()

            can.canonical_snapshot = snap
            can.save()

        expected_single_org_payload['num_buildings'] = 10
        self.assertDictEqual(
            _dict_org(self.fake_request, [self.org])[0],
            expected_single_org_payload)
    def test_dict_org(self):
        """_dict_org turns our org structure into a json payload."""
        expected_single_org_payload = {
            'sub_orgs': [],
            'owners': [{
                'first_name': u'Johnny',
                'last_name': u'Energy',
                'email': u'*****@*****.**',
                'id': self.user.pk
            }],
            'number_of_users': 1,
            'name': 'my org',
            'user_role': 'owner',
            'is_parent': True,
            'org_id': self.org.pk,
            'id': self.org.pk,
            'user_is_owner': True,
            'num_buildings': 0
        }

        org_payload = _dict_org(self.fake_request, [self.org])

        self.assertEqual(len(org_payload), 1)
        self.assertDictEqual(org_payload[0], expected_single_org_payload)

        # Now let's make sure that we pick up related buildings correctly.
        for x in range(10):
            can = CanonicalBuilding.objects.create()
            snap = BuildingSnapshot.objects.create()
            snap.super_organization = self.org
            snap.save()

            can.canonical_snapshot = snap
            can.save()

        expected_single_org_payload['num_buildings'] = 10
        self.assertDictEqual(
            _dict_org(self.fake_request, [self.org])[0],
            expected_single_org_payload
        )
Beispiel #4
0
    def test_dic_org_w_member_in_parent_and_child(self):
        """What happens when a user has a role in parent and child."""
        new_org = Organization.objects.create(name="sub")
        expected_multiple_org_payload = {
            'sub_orgs': [{
                'owners': [{
                    'first_name': u'Johnny',
                    'last_name': u'Energy',
                    'email': u'*****@*****.**',
                    'id': self.user.pk
                }],
                'number_of_users': 1,
                'name': 'sub',
                'sub_orgs': [],
                'user_role': 'owner',
                'is_parent': False,
                'org_id': new_org.pk,
                'id': new_org.pk,
                'user_is_owner': True,
                'num_buildings': 0,
                'created': new_org.created.strftime('%Y-%m-%d')
            }],
            'owners': [{
                'first_name': u'Johnny',
                'last_name': u'Energy',
                'email': u'*****@*****.**',
                'id': self.user.pk
            }],
            'number_of_users': 1,
            'name': 'my org',
            'user_role': 'owner',
            'is_parent': True,
            'org_id': self.org.pk,
            'id': self.org.pk,
            'user_is_owner': True,
            'num_buildings': 0,
            'created': self.org.created.strftime('%Y-%m-%d')
        }

        new_org.parent_org = self.org
        new_org.save()
        new_org.add_member(self.user)

        org_payload = _dict_org(self.fake_request, Organization.objects.all())

        self.assertEqual(len(org_payload), 2)
        self.assertEqual(org_payload[0], expected_multiple_org_payload)
    def test_dic_org_w_member_in_parent_and_child(self):
        """What happens when a user has a role in parent and child."""
        new_org = Organization.objects.create(name="sub")
        expected_multiple_org_payload = {
            "sub_orgs": [
                {
                    "owners": [
                        {
                            "first_name": u"Johnny",
                            "last_name": u"Energy",
                            "email": u"*****@*****.**",
                            "id": self.user.pk,
                        }
                    ],
                    "number_of_users": 1,
                    "name": "sub",
                    "sub_orgs": [],
                    "user_role": "owner",
                    "is_parent": False,
                    "org_id": new_org.pk,
                    "id": new_org.pk,
                    "user_is_owner": True,
                    "num_buildings": 0,
                }
            ],
            "owners": [
                {"first_name": u"Johnny", "last_name": u"Energy", "email": u"*****@*****.**", "id": self.user.pk}
            ],
            "number_of_users": 1,
            "name": "my org",
            "user_role": "owner",
            "is_parent": True,
            "org_id": self.org.pk,
            "id": self.org.pk,
            "user_is_owner": True,
            "num_buildings": 0,
        }

        new_org.parent_org = self.org
        new_org.save()
        new_org.add_member(self.user)

        org_payload = _dict_org(self.fake_request, Organization.objects.all())

        self.assertEqual(len(org_payload), 2)
        self.assertEqual(org_payload[0], expected_multiple_org_payload)
    def test_dic_org_w_member_in_parent_and_child(self):
        """What happens when a user has a role in parent and child."""
        new_org = Organization.objects.create(name="sub")
        expected_multiple_org_payload = {
            'sub_orgs': [{
                'owners': [{
                    'first_name': u'Johnny',
                    'last_name': u'Energy',
                    'email': u'*****@*****.**',
                    'id': self.user.pk
                }],
                'number_of_users': 1,
                'name': 'sub',
                'sub_orgs': [],
                'user_role': 'owner',
                'is_parent': False,
                'org_id': new_org.pk,
                'id': new_org.pk,
                'user_is_owner': True,
                'num_buildings': 0,
            }],
            'owners': [{
                'first_name': u'Johnny',
                'last_name': u'Energy',
                'email': u'*****@*****.**',
                'id': self.user.pk
            }],
            'number_of_users': 1,
            'name': 'my org',
            'user_role': 'owner',
            'is_parent': True,
            'org_id': self.org.pk,
            'id': self.org.pk,
            'user_is_owner': True,
            'num_buildings': 0
        }

        new_org.parent_org = self.org
        new_org.save()
        new_org.add_member(self.user)

        org_payload = _dict_org(self.fake_request, Organization.objects.all())

        self.assertEqual(len(org_payload), 2)
        self.assertEqual(org_payload[0], expected_multiple_org_payload)