Skip to content

Commit 6f0e647

Browse files
committed
FIX: update code/tests after rebase with main.
1 parent cf35d72 commit 6f0e647

File tree

7 files changed

+23
-35
lines changed

7 files changed

+23
-35
lines changed

conf/permissions.dist.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,9 @@ db_permissions:
164164
allowed_roles: ['*']
165165
getCourseSettings:
166166
allowed_roles: ['*']
167-
updateCourseSettings:
167+
updateCourseSetting:
168+
allowed_roles: ['course_admin', 'instructor']
169+
deleteCourseSetting:
168170
allowed_roles: ['course_admin', 'instructor']
169171

170172
# This defines the permisions for each role for the frontend/UI layer.

lib/DB/Utils.pm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ use feature 'signatures';
66
no warnings qw/experimental::signatures/;
77

88
require Exporter;
9-
use base qw/Exporter/;
10-
our @EXPORT_OK = qw/getCourseInfo getUserInfo getSetInfo updateAllFields
9+
use base qw(Exporter);
10+
our @EXPORT_OK = qw/getCourseInfo getUserInfo getSetInfo updateAllFields updatePermissions
1111
getPoolInfo getProblemInfo getPoolProblemInfo getSettingInfo removeLoginParams/;
1212

1313
use Clone qw/clone/;

lib/WeBWorK3.pm

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -216,16 +216,13 @@ sub problemRoutes ($app, $course_routes) {
216216
return;
217217
}
218218

219-
sub settingsRoutes ($self) {
219+
sub settingsRoutes ($self, $course_routes) {
220220
$self->routes->get('/webwork3/api/global-settings')->requires(authenticated => 1)->to('Settings#getGlobalSettings');
221221
$self->routes->get('/webwork3/api/global-setting/:setting_id')->requires(authenticated => 1)
222222
->to('Settings#getGlobalSetting');
223-
$self->routes->get('/webwork3/api/courses/:course_id/settings')->requires(authenticated => 1)
224-
->to('Settings#getCourseSettings');
225-
$self->routes->put('/webwork3/api/courses/:course_id/settings/:setting_id')->requires(authenticated => 1)
226-
->to('Settings#updateCourseSetting');
227-
$self->routes->delete('/webwork3/api/courses/:course_id/settings/:setting_id')->requires(authenticated => 1)
228-
->to('Settings#deleteCourseSetting');
223+
$course_routes->get('/settings')->to('Settings#getCourseSettings');
224+
$course_routes->put('/settings/:setting_id')->to('Settings#updateCourseSetting');
225+
$course_routes->delete('/settings/:setting_id')->to('Settings#deleteCourseSetting');
229226
return;
230227
}
231228

src/pages/instructor/Instructor.vue

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,9 +44,10 @@ export default defineComponent({
4444
await users.fetchGlobalCourseUsers(course_id);
4545
await users.fetchCourseUsers(course_id);
4646
await problem_sets.fetchProblemSets(course_id);
47-
await settings.fetchDefaultSettings(course_id)
48-
.then(() => settings.fetchCourseSettings(course_id))
49-
.then(() => void setI18nLanguage(settings.getCourseSetting('language').value as string))
47+
await settings_store.fetchGlobalSettings();
48+
await settings_store.fetchCourseSettings(course_id)
49+
.then(() => settings_store.fetchCourseSettings(course_id))
50+
.then(() => void setI18nLanguage(settings_store.getCourseSetting('language').value as string))
5051
.catch((err) => logger.error(`${JSON.stringify(err)}`));
5152
5253
},

t/db/build_db.pl

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,15 @@ BEGIN
5757
# The permissions need to be loaded into the DB before the rest of the script is run.
5858
updatePermissions($config_file, $role_perm_file);
5959

60-
my $course_rs = $schema->resultset('Course');
61-
my $user_rs = $schema->resultset('User');
62-
my $course_user_rs = $schema->resultset('CourseUser');
63-
my $problem_set_rs = $schema->resultset('ProblemSet');
64-
my $problem_pool_rs = $schema->resultset('ProblemPool');
65-
my $set_problem_rs = $schema->resultset('SetProblem');
66-
my $user_set_rs = $schema->resultset('UserSet');
67-
my $role_rs = $schema->resultset('Role');
60+
my $course_rs = $schema->resultset('Course');
61+
my $user_rs = $schema->resultset('User');
62+
my $course_user_rs = $schema->resultset('CourseUser');
63+
my $problem_set_rs = $schema->resultset('ProblemSet');
64+
my $problem_pool_rs = $schema->resultset('ProblemPool');
65+
my $set_problem_rs = $schema->resultset('SetProblem');
66+
my $user_set_rs = $schema->resultset('UserSet');
67+
my $role_rs = $schema->resultset('Role');
68+
my $global_setting_rs = $schema->resultset('GlobalSetting');
6869

6970
my $strp_date = DateTime::Format::Strptime->new(pattern => '%F', on_error => 'croak');
7071

t/mojolicious/002_courses.t

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,12 +113,6 @@ $t->post_ok('/webwork3/api/login' => json => { username => 'lisa', password => '
113113
# an instructor can get information about the given course.
114114
$t->get_ok('/webwork3/api/courses/4')->status_is(200)->json_is('/course_name' => 'Arithmetic');
115115

116-
# and also the settings for the course.
117-
118-
$t->get_ok('/webwork3/api/courses/4/default_settings')->status_is(200)
119-
->content_type_is('application/json;charset=UTF-8');
120-
$t->get_ok('/webwork3/api/courses/4/settings')->status_is(200)->content_type_is('application/json;charset=UTF-8');
121-
122116
# The user with role instructor should not have permissions for the following routes.
123117

124118
$t->post_ok('/webwork3/api/courses' => json => $new_course)->status_is(403)->json_is('/has_permission' => 0);

tests/unit-tests/parsing.spec.ts

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import { parseNonNegInt, parseBoolean, parseEmail, parseUsername, EmailParseException,
44
NonNegIntException, BooleanParseException, UsernameParseException,
5-
parseUserRole, parseNonNegDecimal, NonNegDecimalException, isTime, isTimeDuration
5+
parseNonNegDecimal, NonNegDecimalException, isTime, isTimeDuration
66
} from 'src/common/models/parsers';
77

88
describe('Testing Parsers and Regular Expressions', () => {
@@ -68,13 +68,6 @@ describe('Testing Parsers and Regular Expressions', () => {
6868

6969
});
7070

71-
test('parsing user roles', () => {
72-
expect(parseUserRole('instructor')).toBe('INSTRUCTOR');
73-
expect(parseUserRole('TA')).toBe('TA');
74-
expect(parseUserRole('student')).toBe('STUDENT');
75-
expect(parseUserRole('not_existent')).toBe('UNKNOWN');
76-
});
77-
7871
test('testing time regular expressions.', () => {
7972
expect(isTime('00:00')).toBe(true);
8073
expect(isTime('01:00')).toBe(true);

0 commit comments

Comments
 (0)