コード例 #1
0
    def test_imported_docs(self):
        # Test Import
        self.client.login(username='******', password='******')
        user = User.objects.get(username='******')
        r = self.client.get('/dashboard/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/import/manual/', {})
        self.assertEqual(r.status_code, 200)
        form = UpdateProjectForm(data={
            'name': 'Django Kong',
            'repo': 'https://github.com/ericholscher/django-kong',
            'repo_type': 'git',
            'description': 'OOHHH AH AH AH KONG SMASH',
            'language': 'en',
            'default_branch': '',
            'project_url': 'http://django-kong.rtfd.org',
            'default_version': LATEST,
            'privacy_level': 'public',
            'version_privacy_level': 'public',
            'python_interpreter': 'python',
            'documentation_type': 'sphinx',
            'csrfmiddlewaretoken': '34af7c8a5ba84b84564403a280d9a9be',
        }, user=user)
        _ = form.save()
        _ = Project.objects.get(slug='django-kong')

        r = self.client.get('/dashboard/django-kong/versions/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/projects/django-kong/builds/')
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/django-kong/edit/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/django-kong/subprojects/', {})
        self.assertEqual(r.status_code, 200)
コード例 #2
0
    def test_imported_docs(self):
        # Test Import
        self.client.login(username='******', password='******')
        user = User.objects.get(username='******')
        r = self.client.get('/dashboard/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/import/manual/', {})
        self.assertEqual(r.status_code, 200)
        form = UpdateProjectForm(data={
            'name': 'Django Kong',
            'repo': 'https://github.com/ericholscher/django-kong',
            'repo_type': 'git',
            'description': 'OOHHH AH AH AH KONG SMASH',
            'language': 'en',
            'default_branch': '',
            'project_url': 'http://django-kong.rtfd.org',
            'default_version': LATEST,
            'privacy_level': 'public',
            'version_privacy_level': 'public',
            'python_interpreter': 'python',
            'documentation_type': 'sphinx',
            'csrfmiddlewaretoken': '34af7c8a5ba84b84564403a280d9a9be',
        }, user=user)
        _ = form.save()
        _ = Project.objects.get(slug='django-kong')

        r = self.client.get('/dashboard/django-kong/versions/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/projects/django-kong/builds/')
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/django-kong/edit/', {})
        self.assertEqual(r.status_code, 200)
        r = self.client.get('/dashboard/django-kong/subprojects/', {})
        self.assertEqual(r.status_code, 200)
コード例 #3
0
    def _create_kong(self,
                     privacy_level='private',
                     version_privacy_level='private'):
        self.client.login(username='******', password='******')
        log.info(("Making kong with privacy: %s and version privacy: %s" %
                  (privacy_level, version_privacy_level)))
        # Create project via project form, simulate import wizard without magic
        form = UpdateProjectForm(data={
            'repo_type': 'git',
            'repo': 'https://github.com/ericholscher/django-kong',
            'name': 'Django Kong',
            'language': 'en',
            'default_branch': '',
            'project_url': 'http://django-kong.rtfd.org',
            'default_version': LATEST,
            'python_interpreter': 'python',
            'description': 'OOHHH AH AH AH KONG SMASH',
            'documentation_type': 'sphinx'
        },
                                 user=User.objects.get(username='******'))
        proj = form.save()
        # Update these directly, no form has all the fields we need
        proj.privacy_level = privacy_level
        proj.version_privacy_level = version_privacy_level
        proj.num_minor = 2
        proj.num_major = 2
        proj.num_point = 2
        proj.save()

        self.assertAlmostEqual(Project.objects.count(), 1)
        r = self.client.get('/projects/django-kong/')
        self.assertEqual(r.status_code, 200)
        return Project.objects.get(slug='django-kong')
コード例 #4
0
    def test_can_change_language_to_self_lang(self):
        self.project_a_es.translations.add(self.project_b_en)
        self.project_a_es.translations.add(self.project_c_br)
        self.project_a_es.save()

        # Parent project tries to change lang
        form = UpdateProjectForm(
            {
                'repo': 'https://github.com/test/test',
                'repo_type': self.project_a_es.repo_type,
                'name': self.project_a_es.name,
                'documentation_type': 'sphinx',
                'language': 'es',
            },
            instance=self.project_a_es,
        )
        self.assertTrue(form.is_valid())

        # Translation tries to change lang
        form = UpdateProjectForm(
            {
                'repo': 'https://github.com/test/test',
                'repo_type': self.project_b_en.repo_type,
                'name': self.project_b_en.name,
                'documentation_type': 'sphinx',
                'language': 'en',
            },
            instance=self.project_b_en,
        )
        self.assertTrue(form.is_valid())
コード例 #5
0
    def _create_kong(self, privacy_level='private',
                     version_privacy_level='private'):
        self.client.login(username='******', password='******')
        log.info(("Making kong with privacy: %s and version privacy: %s"
                  % (privacy_level, version_privacy_level)))
        # Create project via project form, simulate import wizard without magic
        form = UpdateProjectForm(
            data={'repo_type': 'git',
                  'repo': 'https://github.com/ericholscher/django-kong',
                  'name': 'Django Kong',
                  'language': 'en',
                  'default_branch': '',
                  'project_url': 'http://django-kong.rtfd.org',
                  'default_version': LATEST,
                  'python_interpreter': 'python',
                  'description': 'OOHHH AH AH AH KONG SMASH',
                  'documentation_type': 'sphinx'},
            user=User.objects.get(username='******'))
        proj = form.save()
        # Update these directly, no form has all the fields we need
        proj.privacy_level = privacy_level
        proj.version_privacy_level = version_privacy_level
        proj.num_minor = 2
        proj.num_major = 2
        proj.num_point = 2
        proj.save()

        self.assertAlmostEqual(Project.objects.count(), 1)
        r = self.client.get('/projects/django-kong/')
        self.assertEqual(r.status_code, 200)
        return Project.objects.get(slug='django-kong')
コード例 #6
0
    def test_cant_change_language_to_translation_lang(self):
        self.project_a_es.translations.add(self.project_b_en)
        self.project_a_es.translations.add(self.project_c_br)
        self.project_a_es.save()

        # Parent project tries to change lang
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'en',
            },
            instance=self.project_a_es,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "en" translation',
            ''.join(form.errors['language']),
        )

        # Translation tries to change lang
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'es',
            },
            instance=self.project_b_en,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "es" translation',
            ''.join(form.errors['language']),
        )

        # Translation tries to change lang
        # to the same as its sibling
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'br',
            },
            instance=self.project_b_en,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "br" translation',
            ''.join(form.errors['language']),
        )
コード例 #7
0
    def test_can_change_language_to_self_lang(self):
        self.project_a_es.translations.add(self.project_b_en)
        self.project_a_es.translations.add(self.project_c_br)
        self.project_a_es.save()

        # Parent project tries to change lang
        form = UpdateProjectForm(
            {
                'repo': 'https://github.com/test/test',
                'repo_type': self.project_a_es.repo_type,
                'name': self.project_a_es.name,
                'documentation_type': 'sphinx',
                'language': 'es',
            },
            instance=self.project_a_es,
        )
        self.assertTrue(form.is_valid())

        # Translation tries to change lang
        form = UpdateProjectForm(
            {
                'repo': 'https://github.com/test/test',
                'repo_type': self.project_b_en.repo_type,
                'name': self.project_b_en.name,
                'documentation_type': 'sphinx',
                'language': 'en',
            },
            instance=self.project_b_en,
        )
        self.assertTrue(form.is_valid())
コード例 #8
0
    def _create_kong(self, privacy_level="private", version_privacy_level="private"):
        self.client.login(username="******", password="******")
        log.info(("Making kong with privacy: %s and version privacy: %s" % (privacy_level, version_privacy_level)))
        # Create project via project form, simulate import wizard without magic
        form = UpdateProjectForm(
            data={
                "repo_type": "git",
                "repo": "https://github.com/ericholscher/django-kong",
                "name": "Django Kong",
                "language": "en",
                "default_branch": "",
                "project_url": "http://django-kong.rtfd.org",
                "default_version": LATEST,
                "python_interpreter": "python",
                "description": "OOHHH AH AH AH KONG SMASH",
                "documentation_type": "sphinx",
            },
            user=User.objects.get(username="******"),
        )
        proj = form.save()
        # Update these directly, no form has all the fields we need
        proj.privacy_level = privacy_level
        proj.version_privacy_level = version_privacy_level
        proj.num_minor = 2
        proj.num_major = 2
        proj.num_point = 2
        proj.save()

        latest = proj.versions.get(slug="latest")
        latest.privacy_level = version_privacy_level
        latest.save()

        self.assertAlmostEqual(Project.objects.count(), 1)
        r = self.client.get("/projects/django-kong/")
        self.assertEqual(r.status_code, 200)
        return Project.objects.get(slug="django-kong")
コード例 #9
0
    def test_cant_change_language_to_translation_lang(self):
        self.project_a_es.translations.add(self.project_b_en)
        self.project_a_es.translations.add(self.project_c_br)
        self.project_a_es.save()

        # Parent project tries to change lang
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'en',
            },
            instance=self.project_a_es,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "en" translation',
            ''.join(form.errors['language']),
        )

        # Translation tries to change lang
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'es',
            },
            instance=self.project_b_en,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "es" translation',
            ''.join(form.errors['language']),
        )

        # Translation tries to change lang
        # to the same as its sibling
        form = UpdateProjectForm(
            {
                'documentation_type': 'sphinx',
                'language': 'br',
            },
            instance=self.project_b_en,
        )
        self.assertFalse(form.is_valid())
        self.assertIn(
            'There is already a "br" translation',
            ''.join(form.errors['language']),
        )