def test_0060_slugverification_2(self): """ Verify project slug which already exists under current organisations """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() response = self.fetch( '/%s/+slug-check' % organisation.slug, method="POST", follow_redirects=False, body=urlencode({ 'project_slug':slugify('titan project') }), headers= {'Cookie' : self.get_login_cookie()} ) response = json.loads(response.body) self.assertEqual(response, False)
def test_0070_projecthandler_1(self): """ Test project page which already exist """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() response = self.fetch( '/%s/%s' % (organisation.slug, project.slug), method="GET", follow_redirects=False, headers= {'Cookie' : self.get_login_cookie()} ) self.assertEqual(response.code, 200)
def test_0020_tasklists_post1(self): """ Test post with logged in and invalid organisation slug """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() response = self.fetch( '/an-invalid-organisation/%s/tasklists' % project.slug, method="POST", follow_redirects=False, body=urlencode({'name': "Version 0.1"}), headers={'Cookie': self.get_login_cookie()} ) self.assertEqual(response.code, 404)
def test_0040_projects_post_2(self): """ post with logged in and Project slug already exist """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() response = self.fetch( '/%s/projects/' % organisation.slug, method="POST", follow_redirects=False, body=urlencode({'name':'Titan', 'slug':slugify('titan project')}), headers= {'Cookie' : self.get_login_cookie()} ) self.assertEqual(response.code, 200) self.assertEqual( response.body.count( u'A project with the same short code already exists' ), 1 )
def test_0160_task_handler_post_5(self): """ Test TaskHandler 'post' method invalid form fields """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() tasklist = TaskList(name="version 01", project=project) tasklist.save() response = self.fetch( '/%s/%s/%s/tasks/new' % ( organisation.slug, project.slug, tasklist.sequence ), method="POST", follow_redirects=False, body=urlencode({ "status": "new", "assigned_to": str(self.user.id), }), headers={'Cookie': self.get_login_cookie()}, ) self.assertEqual(response.code, 200)
def test_0100_task_handler_get_2(self): """ Try to render a particular task without providing Task Id If 'task id' is not provided, then it will return create task form. """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() tasklist = TaskList(name="version 01", project=project) tasklist.save() response = self.fetch( '/%s/%s/%s/tasks/new' % ( organisation.slug, project.slug, tasklist.sequence ), method="GET", follow_redirects=False, headers={'Cookie': self.get_login_cookie()} ) self.assertEqual(response.code, 200)
def test_0090_task_handler_get_1(self): """ Try to render a particular task without being logged in """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() tasklist = TaskList(name="version 01", project=project) tasklist.save() response = self.fetch( '/%s/%s/%s/tasks/new' % ( organisation.slug, project.slug, tasklist.sequence ), method="GET", follow_redirects=False, ) self.assertEqual(response.code, 302)
def test_0080_tasklist_get_1(self): """ Test Task List with wrong organisation slug """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() tasklist = TaskList(name="version 01", project=project) tasklist.save() response = self.fetch( '/wrong-organisation/%s/%s' % (project.slug, tasklist.sequence), method="GET", follow_redirects=False, headers={'Cookie': self.get_login_cookie()} ) self.assertEqual(response.code, 404)
def tearDown(self): """ Drop each collection after each test. """ User.drop_collection() Organisation.drop_collection() Team.drop_collection() Project.drop_collection() Task.drop_collection() TaskList.drop_collection()
def test_0010_tasklistshandler_get(self): """ Test tasklists handler get method """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() team = Team( name="Developers", organisation=organisation, members=[self.user] ) team.save() acl = AccessControlList(team=team, role="admin") project = Project( name="titan", organisation=organisation, acl=[acl], slug=slugify('titan project') ) project.save() # User not logged in response = self.fetch( '/%s/%s/tasklists' % (organisation.slug, project.slug), method="GET", follow_redirects=False ) self.assertEqual(response.code, 302) # User logged in and an existing organisation cookies = self.get_login_cookie() response = self.fetch( '/%s/%s/tasklists' % (organisation.slug, project.slug), method="GET", follow_redirects=False, headers={'Cookie': cookies} ) self.assertEqual(response.code, 200) # User logged in and Organisation not existing cookies = self.get_login_cookie() response = self.fetch( '/an-invalid-organisation/%s/tasklists' % project.slug, method="GET", follow_redirects=False, headers={'Cookie': cookies} ) self.assertEqual(response.code, 404)
def test_0070_create_project(self): """ Create project under organisation """ organisation = Organisation( name="open labs", slug=slugify("open labs") ) organisation.save() project = create_project( self.user, "Titan", "titan project", organisation ) project.save() self.assertEqual(Project.objects().count(), 1)