示例#1
0
文件: tests.py 项目: caylan/Bulletin
    def test_membership(self):
        membership = Membership()

        user = User.objects.create_user("Testy McTest", "*****@*****.**", "testpassword")
        user.save()

        group = Group()
        group.name = "Test Group"
        group.save()

        membership.user = User.objects.get(id=user.id)
        membership.group = Group.objects.get(id=group.id)
        membership.is_admin = False

        membership.save()

        test_membership = Membership.objects.get(id=membership.id)

        self.assertEquals(test_membership, membership)
        self.assertEquals(test_membership.user, User.objects.get(id=user.id))
        self.assertEquals(test_membership.group, Group.objects.get(id=group.id))
        self.assertEquals(test_membership.is_admin, False)

        membership.delete()
        group.delete()
        user.delete()
示例#2
0
def group_create(request, assignment_id):
    assignment = get_object_or_404(Assignment, id=assignment_id)

    # students = assignment.discipline.group.profiles.filter(student=True)
    students = []
    for profile in assignment.discipline.group.profiles.all():
        if profile.is_student():
            students.append(profile)

    if request.method == 'POST':
        form = GroupForm(students, request.POST)
        if form.is_valid():
            g = Group()
            g.name = form.cleaned_data['name']
            g.save()

            for selected_student in form.cleaned_data['students']:
                g.profiles.add(Profile.objects.get(pk=selected_student))
            g.profiles.add(assignment.discipline.teacher.profile)

            assignment.group.add(g)
            return HttpResponseRedirect(reverse("educational:assignment_detail", kwargs={'pk': assignment.pk}))

    else:
        form = GroupForm(students)

    return render(request, 'educational/teacher/group_create.html', {'form': form})
示例#3
0
文件: tests.py 项目: caylan/Bulletin
    def test_post(self):
        post = Post()
        
        user = User.objects.create_user('Testy McTest', '*****@*****.**', 'testpassword')
        user.save()
        
        group = Group()
        group.name = "Test Group"
        group.save()
        
        membership = Membership()
        membership.user = User.objects.get(id = user.id)
        membership.group = Group.objects.get(id = group.id)
        membership.save()
        
        post.author = Membership.objects.get(id = membership.id)
        post.message = "Testing321"

        post.save()
    
        test_post = Post.objects.get(id = post.id)
        
        self.assertEquals(test_post, post)
        self.assertEquals(test_post.author, Membership.objects.get(id = membership.id))
        self.assertEquals(test_post.message, "Testing321")
   
        post.delete()
        membership.delete()
        group.delete()
        user.delete()
示例#4
0
	def create_sample_group_db(self, name, alias, tags, description):
		sample_group = Group()
		sample_group.name = name
		sample_group.alias = alias
		sample_group.tags = tags
		sample_group.description = description
		sample_group.save()
示例#5
0
文件: tests.py 项目: caylan/Bulletin
    def test_membership(self):
        membership = Membership()

        user = User.objects.create_user('Testy McTest', '*****@*****.**',
                                        'testpassword')
        user.save()

        group = Group()
        group.name = "Test Group"
        group.save()

        membership.user = User.objects.get(id=user.id)
        membership.group = Group.objects.get(id=group.id)
        membership.is_admin = False

        membership.save()

        test_membership = Membership.objects.get(id=membership.id)

        self.assertEquals(test_membership, membership)
        self.assertEquals(test_membership.user, User.objects.get(id=user.id))
        self.assertEquals(test_membership.group,
                          Group.objects.get(id=group.id))
        self.assertEquals(test_membership.is_admin, False)

        membership.delete()
        group.delete()
        user.delete()
示例#6
0
文件: tests.py 项目: caylan/Bulletin
    def test_group(self):
        group = Group()
        group.name = "Test Group"

        group.save()

        test_group = Group.objects.get(id=group.id)

        self.assertEquals(test_group, group)
        self.assertEquals(test_group.name, "Test Group")
        self.assertEquals(test_group.date_created, group.date_created)

        group.delete()
示例#7
0
    def post(self, request):
        name = request.POST.get('name')

        group = Group()

        group.name = name
        group.start_date = start_date
        group.max_students = max_students

        group.save()
        print(group)

        return redirect('/groups/all')
示例#8
0
	def test_only_displays_GET_on_search(self):
		first_group = Group()
		first_group.name = 'Teh empty tag'
		first_group.alias = 'tehalias'
		first_group.tags = ''
		first_group.description = 'Teh empty description'
		first_group.save()

		request = HttpRequest()
		request.method = 'GET'
		response = home_page(request)

		self.assertNotIn('Teh empty tag', response.content.decode())
示例#9
0
文件: tests.py 项目: caylan/Bulletin
    def test_group(self):
        group = Group()
        group.name = "Test Group"

        group.save()

        test_group = Group.objects.get(id=group.id)

        self.assertEquals(test_group, group)
        self.assertEquals(test_group.name, "Test Group")
        self.assertEquals(test_group.date_created, group.date_created)

        group.delete()
示例#10
0
def create_group(name, email, url_root, owner):
	"""
	_name_		Name of group
	_email_		Email address for group (?)
	_url_root_	acSite
	_owner_		MCID of user/doctor that controls this group
	"""
	u = User()
	u.mcid = mcid_generator.next_mcid()
	u.email = email
	u.set_password(str(u.mcid))
	u.first_name = name
	u.last_name = 'Group'
	u.rolehack = 'rls'
	u.acctype = 'GROUP'
	u.updatetime = 0
	u.ccrlogupdatetime = 0
	u.save()

	g = Group()
	g.grouptypeid = 0
	g.name = name
	g.accid_id = u.mcid
	g.save()
	
	p = Practice()
	p.providergroupid = g
	p.practicename = name
	p.accid_id = u.mcid
	p.save()

	p.practiceRlsUrl = urljoin(url_root,
				   'acct/ws/R.php?pid=%d' % p.practiceid)
	p.save()

	g.parentid = p.practiceid
	g.save()

	ga = Groupadmin()
	ga.groupinstanceid = g.groupinstanceid
	ga.adminaccid = owner
	ga.save()

	add_to_group(g, owner)

	return g, p
示例#11
0
def create_group(name, email, url_root, owner):
    """
	_name_		Name of group
	_email_		Email address for group (?)
	_url_root_	acSite
	_owner_		MCID of user/doctor that controls this group
	"""
    u = User()
    u.mcid = mcid_generator.next_mcid()
    u.email = email
    u.set_password(str(u.mcid))
    u.first_name = name
    u.last_name = 'Group'
    u.rolehack = 'rls'
    u.acctype = 'GROUP'
    u.updatetime = 0
    u.ccrlogupdatetime = 0
    u.save()

    g = Group()
    g.grouptypeid = 0
    g.name = name
    g.accid_id = u.mcid
    g.save()

    p = Practice()
    p.providergroupid = g
    p.practicename = name
    p.accid_id = u.mcid
    p.save()

    p.practiceRlsUrl = urljoin(url_root, 'acct/ws/R.php?pid=%d' % p.practiceid)
    p.save()

    g.parentid = p.practiceid
    g.save()

    ga = Groupadmin()
    ga.groupinstanceid = g.groupinstanceid
    ga.adminaccid = owner
    ga.save()

    add_to_group(g, owner)

    return g, p
示例#12
0
文件: views.py 项目: Manefick/my_site
def addGroup(request):

    if request.method == 'GET':
        return HttpResponse(render(request, 'add_group.html'))
    elif request.method == 'POST':

        name = request.POST.get('name')
        start_date = request.POST.get('startDate')
        max_students = request.POST.get('maxStudents')

        group = Group()

        group.name = name
        group.start_date = start_date
        group.max_students = max_students

        group.save()

    return redirect('/groups/all')
def group(request):
    '''Creates a view of group to add a new group reading the user posted data.'''
    groups = Group.objects.all()
    if request.method == 'POST':
        form = GroupForm(request.POST)
        if form.is_valid():
            group_code = form.cleaned_data['group_code']
            name = form.cleaned_data['name']
            description = form.cleaned_data['description']
            try:
                group = Group()
                group.group_code = group_code
                group.name = name
                group.description = description
                group.save()
            except:
                pass
            return HttpResponseRedirect(reverse('index'))
    else:
        form = GroupForm()
    return render(request, 'groups/group.html', {'groups' : groups, 'form' : form} )
示例#14
0
def group_create_personality_based(request, assignment_id):
    assignment = get_object_or_404(Assignment, id=assignment_id)

    # students = assignment.discipline.group.profiles.filter(student=True)
    students = []
    for profile in assignment.discipline.group.profiles.all():
        if profile.is_student():
            students.append(profile)

    if request.method == 'POST':
        form = PersonalityBasedGroupForm(len(students), request.POST)

        if form.is_valid():
            if form.cleaned_data['algorithm'] == '1':
                groups_members = bruteforce_group_formation(students, form.cleaned_data['number'])
            elif form.cleaned_data['algorithm'] == '2':
                groups_members = random_best_group_formation(students, form.cleaned_data['number'])
            else:
                groups_members = random_group_formation(students, form.cleaned_data['number'])

            for i in xrange(len(groups_members)):
                group = Group()
                group.name = form.cleaned_data['name'] + ' ' + str(i + 1)
                group.save()
                assignment.group.add(group)

                for member in groups_members[i]:
                    group.profiles.add(member)
                group.profiles.add(assignment.discipline.teacher.profile)

            return HttpResponseRedirect(reverse("educational:assignment_detail", kwargs={'pk': assignment.pk}))

    else:
        form = PersonalityBasedGroupForm(len(students))

    return render(request, 'educational/teacher/group_create_personality_based.html', {'form': form})
示例#15
0
def group(request):
    '''Creates a view of group to add a new group reading the user posted data.'''
    groups = Group.objects.all()
    if request.method == 'POST':
        form = GroupForm(request.POST)
        if form.is_valid():
            group_code = form.cleaned_data['group_code']
            name = form.cleaned_data['name']
            description = form.cleaned_data['description']
            try:
                group = Group()
                group.group_code = group_code
                group.name = name
                group.description = description
                group.save()
            except:
                pass
            return HttpResponseRedirect(reverse('index'))
    else:
        form = GroupForm()
    return render(request, 'groups/group.html', {
        'groups': groups,
        'form': form
    })
示例#16
0
# -*- coding: utf-8 -*-
import sys, os
from django.core.management import setup_environ
sys.path.append(os.getcwd())

import settings_copy as settings
setup_environ(settings)

from groups.models import Group

t = int(raw_input('number of groups you want to add:'))

import random

def get_rand(s):
    return s[random.randint(0, len(s) - 1)]

for i in range(t):
    g = Group()
    g.discount = round(random.random(), 2)
    g.name = get_rand(('Super', 'Normal', 'Group')) + str(random.randint(0, 100))
    g.save()
    print g