예제 #1
0
    def test_project_create_no_project_id(self):
        data = {
            'title': 'Test Project',
            'description': 'A test project',
            'pi_emails': '[email protected],[email protected]',
            'managers': ['testuser','testcuuser'],
            'collaborators': ['testuser','testcuuser'],
            'organization':'ucb',
        }

        request = RequestFactory().post('/projects/create',data)
        request.user = self.user
        view = ProjectCreateView.as_view()
        response = view(request)
        self.assertTrue(response.url.startswith('/projects/list/'))
        proj = Project.objects.filter(project_id='ucb1')
        self.assertEqual(proj.count(),1)

        request = RequestFactory().post('/projects/create',data)
        request.user = self.user
        view = ProjectCreateView.as_view()
        response = view(request)
        self.assertTrue(response.url.startswith('/projects/list/'))
        proj = Project.objects.filter(project_id='ucb2')
        self.assertEqual(proj.count(),1)

        data.update({'organization':'csu'})
        request = RequestFactory().post('/projects/create',data)
        request.user = self.user
        view = ProjectCreateView.as_view()
        response = view(request)
        self.assertTrue(response.url.startswith('/projects/list/'))
        proj = Project.objects.filter(project_id='ucb1')
        self.assertEqual(proj.count(),1)
예제 #2
0
    def test_project_create(self):
        request = RequestFactory().post(
                '/projects/create',
                data={
                    'project_id': 'ucb1',
                    'title': 'Test Project',
                    'description': 'A test project',
                    'pi_emails': '[email protected],[email protected]',
                    'managers': ['testuser','testcuuser'],
                    'collaborators': ['testuser','testcuuser'],
                    'organization':'ucb',
                }
            )
        request.user = self.user
        view = ProjectCreateView.as_view()
        response = view(request)

        self.assertTrue(response.url.startswith('/projects/list/'))

        proj = Project.objects.get(project_id='ucb1')
        self.assertEquals(proj.title,'Test Project')
        self.assertEquals(proj.description,'A test project')
        self.assertEquals(proj.pi_emails,['*****@*****.**','*****@*****.**'])
        self.assertEquals(proj.managers,['testuser','testcuuser','testrequester'])
        self.assertEquals(proj.collaborators,['testuser','testcuuser'])
        self.assertEquals(proj.organization,'ucb')
예제 #3
0
    def test_project_create_missing_explanation(self):
        request = RequestFactory().post(
                '/projects/create',
                data = {
                    # 'title': 'Test Project',
                    # 'description': 'A test project',
                    'pi_emails': '[email protected],[email protected]',
                    'managers': ['testuser','testcuuser'],
                    'collaborators': ['testuser','testcuuser'],
                    'organization':'ucb',
                }
            )
        request.user = self.user
        view = ProjectCreateView.as_view()
        response = view(request)

        self.assertEquals(
                len(response.context_data['form'].errors['title']),
                1
            )
        self.assertEquals(
                len(response.context_data['form'].errors['description']),
                1
            )

        self.assertRaises(
                Project.DoesNotExist,
                Project.objects.get,
                **{}
            )
예제 #4
0
파일: urls.py 프로젝트: USEPA/TRACI
# We disable the invalid name because urlpatterns is the Django default
"""
URLs related to managing projects

Available functions:
- None yet
"""

from django.conf.urls import url
from projects.views import ProjectListView, ProjectCreateView, get_projects, \
    ProjectEditView, ProjectDetailView, ProjectDeleteView, \
    ProjectCalculationsView

urlpatterns = [
    url(r'^projects/?$', ProjectListView.as_view(), name='projects'),
    url(r'^create/?$', ProjectCreateView.as_view(), name='create_project'),
    url(r'^edit/(?P<pk>\d+)/?$',
        ProjectEditView.as_view(),
        name='edit_project'),
    url(r'^detail/(?P<pk>\d+)/?$',
        ProjectDetailView.as_view(),
        name='detail_project'),
    url(r'^delete/(?P<pk>\d+)/?$',
        ProjectDeleteView.as_view(),
        name='delete_project'),
    url(r'^calculations/(?P<pk>\d+)/?$',
        ProjectCalculationsView.as_view(),
        name='delete_project'),
    url(r'^get_projects/?$', get_projects, name='get_projects'),
]
예제 #5
0
파일: urls.py 프로젝트: gdebure/cream
from django.contrib.auth.decorators import permission_required, login_required

from django.views.generic import DetailView, ListView, UpdateView, CreateView, DeleteView
from projects.models import Project, Deliverable, DeliverableVolume

from projects.views import ProjectListView, FilteredProjectListView, ProjectDetailView, ProjectUpdateView, ProjectCreateView, ProjectDeleteView
from projects.views import DeliverableListView, DeliverableDetailView, DeliverableUpdateView, DeliverableCreateView, DeliverableDeleteView, AddDeliverableFromProjectView
from projects.views import AddDeliverableVolumeView, DeliverableVolumeUpdateView
from qualifications.views import AddPositionFromProjectView

urlpatterns = [
    ##################################
    # Projects 
    url(r'^projects/$', ProjectListView.as_view(), name='projects_list'),
    url(r'^projects/(?P<pk>\d+)/$', ProjectDetailView.as_view(), name='project_detail'),
    url(r'^projects/create/$', ProjectCreateView.as_view(), name='create_project'),
    url(r'^projects/(?P<pk>\d+)/update/$', ProjectUpdateView.as_view(), name='update_project'),
    url(r'^projects/(?P<pk>\d+)/delete/$', ProjectDeleteView.as_view(), name='delete_project'),
    
    # Add deliverable to a project
    url(r'^projects/(?P<pk>\d+)/add_deliverable/$', AddDeliverableFromProjectView.as_view(), name='add_deliverable'),
    # Add position to a project
    url(r'^projects/(?P<pk>\d+)/add_position/$', AddPositionFromProjectView.as_view(), name='add_projectposition'),
    url(r'^projects/(?P<filter>.+)/$', FilteredProjectListView.as_view(),name='projects_list_status'),
    ##################################
    
    
    ##################################
    # Deliverables
    url(r'^deliverables/$', DeliverableListView.as_view(), name='deliverables_list' ),
    url(r'^deliverables/(?P<pk>\d+)/$', DeliverableDetailView.as_view(), name='deliverable_detail'),
예제 #6
0
from django.conf.urls import include, url
from django.contrib.auth.decorators import login_required
from projects.views import ProjectListView
from projects.views import ProjectDetailView
from projects.views import ProjectEditView
from projects.views import ProjectCreateView
from projects.views import ReferenceDetailView
from projects.views import ReferenceEditView
from projects.views import ReferenceCreateView
from projects.views import AllocationRequestDetailView
from projects.views import AllocationRequestCreateView

urlpatterns = [
    url(r'^list$', login_required(ProjectListView.as_view()), name='project-list'),
    url(r'^list/(?P<pk>[-\w]+)/$', login_required(ProjectDetailView.as_view()), name='project-detail'),
    url(r'^list/(?P<pk>[-\w]+)/edit$', login_required(ProjectEditView.as_view()), name='project-edit'),
    url(r'^create$', login_required(ProjectCreateView.as_view()), name='project-create'),
    url(r'^list/(?P<project_pk>[-\w]+)/references/(?P<pk>[-\w]+)/$', login_required(ReferenceDetailView.as_view()), name='reference-detail'),
    url(r'^list/(?P<project_pk>[-\w]+)/references/(?P<pk>[-\w]+)/edit$', login_required(ReferenceEditView.as_view()), name='reference-edit'),
    url(r'^list/(?P<project_pk>[-\w]+)/references/create$', login_required(ReferenceCreateView.as_view()), name='reference-create'),
    url(r'^list/(?P<project_pk>[-\w]+)/allocationrequests/(?P<pk>[-\w]+)/$', login_required(AllocationRequestDetailView.as_view()), name='allocation-request-detail'),
    url(r'^list/(?P<project_pk>[-\w]+)/allocationrequests/create$', login_required(AllocationRequestCreateView.as_view()), name='allocation-request-create'),
]
예제 #7
0
from django.urls import path

from projects.views import (ProjectCreateView, ProjectListView,
                            ProjectDetailView, ProjectDeleteView,
                            ProjectUpdateView)

urlpatterns = [
    path('créer/', ProjectCreateView.as_view(), name='project_create_view'),
    path('vos-projets/', ProjectListView.as_view(), name='project_list_view'),
    path('<int:pk>-<str>/',
         ProjectDetailView.as_view(),
         name='project_detail_view'),
    path('supprimer/<int:pk>/',
         ProjectDeleteView.as_view(),
         name='project_delete_view'),
    path('editer/<int:pk>/',
         ProjectUpdateView.as_view(),
         name='project_update_view'),
]
예제 #8
0
파일: urls.py 프로젝트: MechanisM/Pledge
from django.conf.urls.defaults import patterns, include, url

from projects.views import (ProjectCreateView, DeveloperAddView,
                            DeveloperDeleteView, ProjectListView)

urlpatterns = patterns('',
    url(r'^$', ProjectListView.as_view(), name='project_list'),
    url(r'^(?P<pk>\d+)/$', ProjectDetailView.as_view(), name='project_detail'),
    url(r'^create/$', ProjectCreateView.as_view(), name='project_create'),
    url(r'^(?P<pk>\d+)/developer/add/$', DeveloperAddView.as_view(),
        name='developer_add'),
    url(r'^(?P<pk>\d+)/developer/(?P<developer_pk>\d+)/delete/$', DeveloperDeleteView.as_view(),
        name='developer_delete'),
)
예제 #9
0
# -*- coding: utf-8 -*-
from django.urls import path

from projects.ajax import (ImportedArchiveCreateView,
                           ProjectCollaboratorCreateView,
                           ProjectCollaboratorDeleteView, ProjectDeleteView,
                           ProjectVisibilityUpdateView)
from projects.views import (ProjectBadgeUrlView, ProjectBadgeView,
                            ProjectCollaboratorsView, ProjectCreateView,
                            ProjectDetailView, ProjectListView,
                            ProjectSettingsView, ProjectUploadsView)

base_urlpatterns = [
    path(route='', view=ProjectListView.as_view(), name='project-list'),
    path(route='new/', view=ProjectCreateView.as_view(),
         name='project-create'),
    path(route='<slug:slug>/',
         view=ProjectDetailView.as_view(),
         name='project-detail'),
    path(route='<slug:slug>/badge/',
         view=ProjectBadgeView.as_view(),
         name='project-badge'),
    path(route='<slug:slug>/uploads/',
         view=ProjectUploadsView.as_view(),
         name='project-uploads'),
    path(route='<slug:slug>/collaborators/',
         view=ProjectCollaboratorsView.as_view(),
         name='project-collaborators'),
    path(route='<slug:slug>/settings/',
         view=ProjectSettingsView.as_view(),
         name='project-settings'),
예제 #10
0
from projects import views

urlpatterns = [
    
    path('pdf/<pk>/<slug:slug>/', views.get_pdf, name="get-pdf"),
    path('like-project/<id>/', views.like_project, name="like-project"),
    path('dislike-project/<id>/', views.dislike_project, name="dislike-project"),
    path('like-project-list/', views.like_project_list, name="like-project-list"),

    path('admin/', admin.site.urls),
    path('', ProjectListView.as_view(), name='project-list'),
    path('search/', SearchView.as_view(), name='search'),
    path('search-profile-project/', SearchProjectProfileView.as_view(), name='search-profile-project'),
    path('search-contribution-project/', SearchProjectContributionView.as_view(), name='search-contribution-project'),
    path('search-categorie/', SearchCategorieView.as_view(), name='search-categorie'),
    path('create/', ProjectCreateView.as_view(), name='project-create'),
    path('project/<pk>/', ProjectDetailView.as_view(), name='project-detail'),
    path('requirement/<pk>/', RequirementDetailView.as_view(), name='requirement-detail'),
    path('requirement/<pk>/like-req',views.like_req, name='like-req'),
    path('requirement/<pk>/dislike-req', views.dislike_req, name='dislike-req'),
    path('project/<pk>/update/', ProjectUpdateView.as_view(), name='project-update'),
    path('requirement/<pk>/delete/', RequirementDeleteView.as_view(), name='requirement-delete'),
    path('register/', user_views.register, name='register'),
    path('profile/', user_views.profile, name='profile'),
    path('login/', auth_views.LoginView.as_view(template_name='accounts/login.html'), name='login'),
    path('logout/', auth_views.LogoutView.as_view(template_name='accounts/logout.html'), name='logout'),
    path('password-reset/',
         auth_views.PasswordResetView.as_view(
             template_name='accounts/password_reset.html'
         ),
         name='password_reset'),
예제 #11
0
from django.conf.urls import patterns, include, url
from django.conf import settings
from projects.views import ProjectCreateView, ProjectDeleteView, \
    ProjectUpdateView, ProjectDetailView, ProjectListView, \
    ProjectConfirmView, QRCodeDetailView

urlpatterns = patterns(
    '',
    url(r'^$', ProjectListView.as_view(), name='project_list'),
    url(r'^create/$', ProjectCreateView.as_view(), name='project_create'),
    url(r'^(?P<pk>\d+)/delete/$', ProjectDeleteView.as_view(),
        name='project_delete'),
    url(r'^(?P<pk>\d+)/update/$', ProjectUpdateView.as_view(),
        name='project_update'),
    url(r'^(?P<pk>\d+)/$', ProjectDetailView.as_view(),
        name='project_detail'),
    url(r'^confirm/$', ProjectConfirmView.as_view(), name='project_confirm'),
    url(r'^confirm/(?P<pk>\d+)/qrcode/$', QRCodeDetailView.as_view(),
        name="qrcode_detail")
    )