Ejemplo n.º 1
0
    def test_developer(self):
        count = Developer.objects.count()

        create_login = '******'.format(count + 1)
        create_name = 'test-name-{}'.format(count + 1)
        create_email = 'test-email-{}'.format(count + 1)

        created = developer_builder({
            'id': count + 1,
            'avatar_url': '',
            'login': create_login,
            'name': create_name,
            'email': create_email,
        })

        assert Developer.objects.count(
        ) == count + 1, 'a new developer must be created'

        same = developer_builder({
            'id': count + 1,
            'avatar_url': '',
            'login': create_login,
            'name': create_name,
            'email': create_email,
        })

        assert Developer.objects.count(
        ) == count + 1, 'the same developer must be returned'
        assert created == same, 'the same developer must be returned'

        with self.assertRaises(IntegrityError):
            developer_builder({
                'id': count + 2,
                'avatar_url': '',
                'login': create_login,  # same login
                'name': create_name,
                'email': create_email,
            })
    def test_developer(self):
        count = Developer.objects.count()

        create_login = '******'.format(count + 1)
        create_name = 'test-name-{}'.format(count + 1)
        create_email = 'test-email-{}'.format(count + 1)

        created = developer_builder({
            'id': count + 1,
            'avatar_url': '',
            'login': create_login,
            'name': create_name,
            'email': create_email,
        })

        assert Developer.objects.count() == count + 1, 'a new developer must be created'

        same = developer_builder({
            'id': count + 1,
            'avatar_url': '',
            'login': create_login,
            'name': create_name,
            'email': create_email,
        })

        assert Developer.objects.count() == count + 1, 'the same developer must be returned'
        assert created == same, 'the same developer must be returned'

        with self.assertRaises(IntegrityError):
            developer_builder({
                'id': count + 2,
                'avatar_url': '',
                'login': create_login,  # same login
                'name': create_name,
                'email': create_email,
            })
    def test_project_builder_new_project(self):
        developer = developer_builder({
            'id': 1,
            'avatar_url': '',
            'login': '******',
            'name': 'teste',
            'email': 'teste',
        })

        organization = organization_builder({
            "login": "******",
            "id": 1,
            "url": "https://api.github.com/orgs/github",
            "avatar_url": "https://github.com/images/error/octocat_happy.gif",
            "description": "A great organization"
        })
        count = Milestone.objects.count()
        with open('webhooks/tests/data/project.json') as json_file:
            project_json = json.load(json_file)

        project = project_builder(project_json, organization)
        with open('webhooks/tests/data/milestone.json') as json_file:
            milestone_json = json.load(json_file)

        project = project_builder(project_json, organization)
        milestone = milestone_builder(milestone_json, project, developer)
        self.assertEqual(Milestone.objects.count(), count + 1)
        self.assertEqual(milestone.github_id, milestone_json.get('id'))
        self.assertEqual(milestone.number, milestone_json.get('number'))
        self.assertEqual(milestone.state, milestone_json.get('state'))
        self.assertEqual(milestone.title, milestone_json.get('title'))
        self.assertEqual(milestone.description, milestone_json.get('description'))
        self.assertEqual(milestone.html_url, milestone_json.get('html_url'))
        self.assertEqual(milestone.created_at, milestone_json.get('created_at'))
        self.assertEqual(milestone.closed_at, milestone_json.get('closed_at'))
        self.assertEqual(milestone.updated_at, milestone_json.get('updated_at'))
        self.assertEqual(milestone.due_on, milestone_json.get('due_on'))