Skip to content
Snippets Groups Projects
Commit 15adf237 authored by Christopher Bohn's avatar Christopher Bohn :thinking:
Browse files

Fixed zero padding for cases when number of teams is divisible by 10

parent 558ce331
Branches
No related tags found
No related merge requests found
...@@ -171,7 +171,8 @@ if __name__ == '__main__': ...@@ -171,7 +171,8 @@ if __name__ == '__main__':
if option is options[1]: if option is options[1]:
print('Which group?') print('Which group?')
student_groups = [select_from_list(student_groups, 'student group')] student_groups = [select_from_list(student_groups, 'student group')]
zero_padding: int = ceil(log10(len(projects))) zero_padding: int = ceil(log10(len(projects))) # remove this after 24pair is graded
# zero_padding: int = floor(log10(len(projects))) + 1 # leaving this here until 24pair is graded
assignment_start_date = get_assignment_start() # TODO: only need this if grading git histories assignment_start_date = get_assignment_start() # TODO: only need this if grading git histories
for student_group in student_groups: # TODO: Skip past graded groups for student_group in student_groups: # TODO: Skip past graded groups
input(f'\n\nPress Enter to grade {student_group}') input(f'\n\nPress Enter to grade {student_group}')
......
import random import random
import subprocess import subprocess
from math import ceil, log10 from math import floor, log10
from typing import Tuple from typing import Tuple
from api.canvas_classes import * from api.canvas_classes import *
from api.gitlab_classes import *
from api.composite_user import CompositeUser from api.composite_user import CompositeUser
from api.gitlab_classes import *
from common_functions import get_students from common_functions import get_students
from course import Course from course import Course
...@@ -210,7 +210,7 @@ def create_contact_list(groupset_name: str, ...@@ -210,7 +210,7 @@ def create_contact_list(groupset_name: str,
student_pairs: List[Tuple[int, CompositeUser, CompositeUser, Optional[CompositeUser]]]) -> None: student_pairs: List[Tuple[int, CompositeUser, CompositeUser, Optional[CompositeUser]]]) -> None:
filename = f'{groupset_name}-partners.md' filename = f'{groupset_name}-partners.md'
print(f'Writing {filename}.') print(f'Writing {filename}.')
zero_padding: int = ceil(log10(len(student_pairs))) zero_padding: int = floor(log10(len(student_pairs))) + 1
with open(filename, mode='w') as pair_file: with open(filename, mode='w') as pair_file:
pair_file.write(f'# PARTNERS FOR ASSIGNMENT {groupset_name}\n\n') pair_file.write(f'# PARTNERS FOR ASSIGNMENT {groupset_name}\n\n')
for pair in student_pairs: for pair in student_pairs:
...@@ -225,7 +225,7 @@ def create_repositories(groupset_name: str, ...@@ -225,7 +225,7 @@ def create_repositories(groupset_name: str,
student_pairs: List[Tuple[int, CompositeUser, CompositeUser, Optional[CompositeUser]]]) -> None: student_pairs: List[Tuple[int, CompositeUser, CompositeUser, Optional[CompositeUser]]]) -> None:
filename = f'{groupset_name}-clone.sh' filename = f'{groupset_name}-clone.sh'
print(f'Creating file for clone script: {filename}. Creating repositories on Gitlab.') print(f'Creating file for clone script: {filename}. Creating repositories on Gitlab.')
zero_padding: int = ceil(log10(len(student_pairs))) zero_padding: int = floor(log10(len(student_pairs))) + 1
with open(filename, mode='w') as clone_file: with open(filename, mode='w') as clone_file:
clone_file.write('#!/bin/bash\n\n') clone_file.write('#!/bin/bash\n\n')
clone_file.write('# Auto-generated clone script.\n') clone_file.write('# Auto-generated clone script.\n')
...@@ -251,7 +251,7 @@ def create_groups(groupset_name: str, ...@@ -251,7 +251,7 @@ def create_groups(groupset_name: str,
print(f'Creating groupset {groupset_name} and student groups on Canvas.') print(f'Creating groupset {groupset_name} and student groups on Canvas.')
course = CanvasCourse(Course.canvas_course_id) course = CanvasCourse(Course.canvas_course_id)
group_set = course.create_user_groupset(groupset_name) group_set = course.create_user_groupset(groupset_name)
zero_padding: int = ceil(log10(len(student_pairs))) zero_padding: int = floor(log10(len(student_pairs))) + 1
for pair in student_pairs: for pair in student_pairs:
print(f'\tCreating group for pair number {str(pair[0]).zfill(zero_padding)}') print(f'\tCreating group for pair number {str(pair[0]).zfill(zero_padding)}')
group = group_set.create_group(f'\t{groupset_name} {str(pair[0]).zfill(zero_padding)}') group = group_set.create_group(f'\t{groupset_name} {str(pair[0]).zfill(zero_padding)}')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment