colocate some QUnit tests

Change-Id: If111507b32fbb46603537e13768ce14e32bf2860
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/349223
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Drake Harper <drake.harper@instructure.com>
Product-Review: Drake Harper <drake.harper@instructure.com>
This commit is contained in:
Aaron Shafovaloff 2024-06-04 15:23:36 -06:00
parent 7c308e3a89
commit dfb5cce47b
63 changed files with 115 additions and 97 deletions

View File

@ -16,6 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
const {glob} = require('glob')
const path = require('path') const path = require('path')
module.exports = { module.exports = {
@ -258,6 +259,36 @@ module.exports = {
}, },
}, },
overrides: [ overrides: [
{
files: ['ui/**/*Spec.js', 'ui/**/*Spec.jsx'],
extends: ['plugin:qunit/recommended', 'plugin:qunit/two'],
plugins: ['qunit'],
globals: {
module: true,
test: true,
equal: true,
ok: true,
sandbox: true,
sinon: true,
deepEqual: true,
},
env: {
qunit: true,
},
rules: {
'func-names': 'off',
'prefer-arrow-callback': 'off',
'jest/no-identical-title': 'off',
'qunit/no-identical-names': 'off',
'qunit/no-setup-teardown': 'off',
'qunit/no-global-assertions': 'off',
'qunit/no-global-module-test': 'off',
'qunit/require-expect': 'off',
'qunit/no-assert-logical-expression': 'error',
'qunit/no-commented-tests': 'error',
'qunit/no-compare-relation-boolean': 'error',
},
},
{ {
files: require('./jest.config').testMatch, files: require('./jest.config').testMatch,
plugins: ['jest'], plugins: ['jest'],

View File

@ -23,8 +23,8 @@ import Enzyme from 'enzyme'
import Adapter from 'enzyme-adapter-react-16' import Adapter from 'enzyme-adapter-react-16'
import filterUselessConsoleMessages from '@instructure/filter-console-messages' import filterUselessConsoleMessages from '@instructure/filter-console-messages'
import rceFormatMessage from '@instructure/canvas-rce/es/format-message' import rceFormatMessage from '@instructure/canvas-rce/es/format-message'
import {up as configureDateTime} from '../ui/boot/initializers/configureDateTime' import {up as configureDateTime} from '@canvas/datetime/configureDateTime'
import {up as configureDateTimeMomentParser} from '../ui/boot/initializers/configureDateTimeMomentParser' import {up as configureDateTimeMomentParser} from '@canvas/datetime/configureDateTimeMomentParser'
import {useTranslations} from '@canvas/i18n' import {useTranslations} from '@canvas/i18n'
import MockBroadcastChannel from './MockBroadcastChannel' import MockBroadcastChannel from './MockBroadcastChannel'

View File

@ -29,7 +29,7 @@ import detroit from 'timezone/America/Detroit'
import chicago from 'timezone/America/Chicago' import chicago from 'timezone/America/Chicago'
import newYork from 'timezone/America/New_York' import newYork from 'timezone/America/New_York'
import I18n from 'i18n-js' import I18n from 'i18n-js'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const {helpers} = Handlebars const {helpers} = Handlebars
const {contains} = assertions const {contains} = assertions

View File

@ -1,3 +1,4 @@
/* eslint-disable no-throw-literal */
/* /*
* Copyright (C) 2015 - present Instructure, Inc. * Copyright (C) 2015 - present Instructure, Inc.
* *
@ -16,7 +17,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import I18n, {useTranslations} from '@canvas/i18n' import I18n from '@canvas/i18n'
import enTranslations from 'translations/en.json' import enTranslations from 'translations/en.json'
const frames = [] const frames = []

View File

@ -35,7 +35,8 @@ import {
timeString, timeString,
unfudgeDateForProfileTimezone, unfudgeDateForProfileTimezone,
} from '@canvas/datetime/date-functions' } from '@canvas/datetime/date-functions'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
import '@canvas/datetime/jquery/datepicker'
QUnit.module('fudgeDateForProfileTimezone', { QUnit.module('fudgeDateForProfileTimezone', {
setup() { setup() {

View File

@ -24,7 +24,7 @@ import timezone from 'timezone'
import detroit from 'timezone/America/Detroit' import detroit from 'timezone/America/Detroit'
import juneau from 'timezone/America/Juneau' import juneau from 'timezone/America/Juneau'
import tokyo from 'timezone/Asia/Tokyo' import tokyo from 'timezone/Asia/Tokyo'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const defaultAssignment = () => ({ const defaultAssignment = () => ({
title: 'assignment', title: 'assignment',

View File

@ -34,7 +34,7 @@ import SyllabusView from 'ui/features/syllabus/backbone/views/SyllabusView'
import SyllabusViewPrerendered from './SyllabusViewPrerendered' import SyllabusViewPrerendered from './SyllabusViewPrerendered'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
import '@canvas/jquery/jquery.simulate' import '@canvas/jquery/jquery.simulate'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
function setupServerResponses() { function setupServerResponses() {
const server = sinon.fakeServer.create() const server = sinon.fakeServer.create()

View File

@ -17,7 +17,7 @@
*/ */
import I18nStubber from 'helpers/I18nStubber' import I18nStubber from 'helpers/I18nStubber'
import {prepareFormats} from '../../../ui/boot/initializers/configureDateTimeMomentParser' import {prepareFormats} from '@canvas/datetime/configureDateTimeMomentParser'
QUnit.module('Moment formats', { QUnit.module('Moment formats', {
setup() { setup() {

View File

@ -24,7 +24,7 @@ import newYork from 'timezone/America/New_York'
import AssessmentSummary from 'ui/features/speed_grader/react/AssessmentAuditTray/components/AssessmentSummary' import AssessmentSummary from 'ui/features/speed_grader/react/AssessmentAuditTray/components/AssessmentSummary'
import {overallAnonymityStates} from 'ui/features/speed_grader/react/AssessmentAuditTray/AuditTrailHelpers' import {overallAnonymityStates} from 'ui/features/speed_grader/react/AssessmentAuditTray/AuditTrailHelpers'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const {FULL, NA, PARTIAL} = overallAnonymityStates const {FULL, NA, PARTIAL} = overallAnonymityStates

View File

@ -26,8 +26,8 @@ import en_US from 'timezone/en_US'
import './jsx/spec-support/specProtection' import './jsx/spec-support/specProtection'
import filterUselessConsoleMessages from '@instructure/filter-console-messages' import filterUselessConsoleMessages from '@instructure/filter-console-messages'
import './jsx/spec-support/timezoneBackwardsCompatLayer' import './jsx/spec-support/timezoneBackwardsCompatLayer'
import {up as configureDateTime} from 'ui/boot/initializers/configureDateTime' import {up as configureDateTime} from '@canvas/datetime/configureDateTime'
import {up as configureDateTimeMomentParser} from 'ui/boot/initializers/configureDateTimeMomentParser' import {up as configureDateTimeMomentParser} from '@canvas/datetime/configureDateTimeMomentParser'
import {useTranslations} from '@canvas/i18n' import {useTranslations} from '@canvas/i18n'
import CoreTranslations from 'translations/en.json' import CoreTranslations from 'translations/en.json'

View File

@ -24,8 +24,8 @@ import filterUselessConsoleMessages from '../../packages/filter-console-messages
import moment from 'moment' import moment from 'moment'
import './initializers/fakeRequireJSFallback' import './initializers/fakeRequireJSFallback'
import './initializers/ujsLinks' import './initializers/ujsLinks'
import {up as configureDateTimeMomentParser} from './initializers/configureDateTimeMomentParser' import {up as configureDateTimeMomentParser} from '@canvas/datetime/configureDateTimeMomentParser'
import {up as configureDateTime} from './initializers/configureDateTime' import {up as configureDateTime} from '@canvas/datetime/configureDateTime'
import {initSentry} from './initializers/initSentry' import {initSentry} from './initializers/initSentry'
import {up as renderRailsFlashNotifications} from './initializers/renderRailsFlashNotifications' import {up as renderRailsFlashNotifications} from './initializers/renderRailsFlashNotifications'
import {up as activateCourseMenuToggler} from './initializers/activateCourseMenuToggler' import {up as activateCourseMenuToggler} from './initializers/activateCourseMenuToggler'

View File

@ -22,11 +22,11 @@ import zh_CN from 'timezone/zh_CN'
import en_US from 'timezone/en_US' import en_US from 'timezone/en_US'
import MockDate from 'mockdate' import MockDate from 'mockdate'
import I18nStubber from '../../../../spec/coffeescripts/helpers/I18nStubber' import I18nStubber from '../../../../spec/coffeescripts/helpers/I18nStubber'
import {up as configureDateTime, down as resetDateTime} from '../configureDateTime' import {up as configureDateTime, down as resetDateTime} from '@canvas/datetime/configureDateTime'
import { import {
up as configureDateTimeMomentParser, up as configureDateTimeMomentParser,
down as resetDateTimeMomentParser, down as resetDateTimeMomentParser,
} from '../configureDateTimeMomentParser' } from '@canvas/datetime/configureDateTimeMomentParser'
const equal = (a, b, _message) => expect(a).toEqual(b) const equal = (a, b, _message) => expect(a).toEqual(b)

View File

@ -40,8 +40,8 @@ import '../../../ext/custom_moment_locales/hy_am'
import '../../../ext/custom_moment_locales/sl' import '../../../ext/custom_moment_locales/sl'
import {parse, format, hasMeridiem, dateString} from '@instructure/moment-utils' import {parse, format, hasMeridiem, dateString} from '@instructure/moment-utils'
import * as configureDateTime from '../configureDateTime' import * as configureDateTime from '@canvas/datetime/configureDateTime'
import * as configureDateTimeMomentParser from '../configureDateTimeMomentParser' import * as configureDateTimeMomentParser from '@canvas/datetime/configureDateTimeMomentParser'
// eslint-disable-next-line import/no-nodejs-modules // eslint-disable-next-line import/no-nodejs-modules
import fs from 'fs' import fs from 'fs'
import I18n, {useTranslations} from '@canvas/i18n' import I18n, {useTranslations} from '@canvas/i18n'

View File

@ -22,7 +22,7 @@ import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import axios from '@canvas/axios' import axios from '@canvas/axios'
import {defaults} from 'lodash' import {defaults} from 'lodash'
import GradingPeriod from 'ui/features/account_grading_standards/react/AccountGradingPeriod' import GradingPeriod from '../AccountGradingPeriod'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -21,7 +21,7 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import _ from 'lodash' import _ from 'lodash'
import GradingPeriodSetForm from 'ui/features/account_grading_standards/react/EditGradingPeriodSetForm' import GradingPeriodSetForm from '../EditGradingPeriodSetForm'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -17,11 +17,10 @@
*/ */
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {findRenderedDOMComponentWithClass} from 'react-dom/test-utils' import {findRenderedDOMComponentWithClass} from 'react-dom/test-utils'
import {defaults, map} from 'lodash' import {defaults, map} from 'lodash'
import Input from 'ui/features/account_grading_standards/react/EnrollmentTermInput' import Input from '../EnrollmentTermInput'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -21,7 +21,7 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import _ from 'lodash' import _ from 'lodash'
import Dropdown from 'ui/features/account_grading_standards/react/EnrollmentTermsDropdown' import Dropdown from '../EnrollmentTermsDropdown'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -25,7 +25,7 @@ import * as tz from '@instructure/moment-utils'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
import timezone from 'timezone' import timezone from 'timezone'
import GradingPeriodForm from '../GradingPeriodForm' import GradingPeriodForm from '../GradingPeriodForm'
import {getI18nFormats} from '../../../../boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const onSave = jest.fn() const onSave = jest.fn()
const onCancel = jest.fn() const onCancel = jest.fn()

View File

@ -23,8 +23,8 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {Simulate, findRenderedDOMComponentWithTag} from 'react-dom/test-utils' import {Simulate, findRenderedDOMComponentWithTag} from 'react-dom/test-utils'
import gradingPeriodSetsApi from '@canvas/grading/jquery/gradingPeriodSetsApi' import gradingPeriodSetsApi from '@canvas/grading/jquery/gradingPeriodSetsApi'
import enrollmentTermsApi from 'ui/features/account_grading_standards/enrollmentTermsApi' import enrollmentTermsApi from '../../enrollmentTermsApi'
import GradingPeriodSetCollection from 'ui/features/account_grading_standards/react/GradingPeriodSetCollection' import GradingPeriodSetCollection from '../GradingPeriodSetCollection'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -22,7 +22,7 @@ import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import _ from 'lodash' import _ from 'lodash'
import axios from '@canvas/axios' import axios from '@canvas/axios'
import GradingPeriodSet from 'ui/features/account_grading_standards/react/GradingPeriodSet' import GradingPeriodSet from '../GradingPeriodSet'
import gradingPeriodsApi from '@canvas/grading/jquery/gradingPeriodsApi' import gradingPeriodsApi from '@canvas/grading/jquery/gradingPeriodsApi'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -22,7 +22,7 @@ import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import {defaults} from 'lodash' import {defaults} from 'lodash'
import setsApi from '@canvas/grading/jquery/gradingPeriodSetsApi' import setsApi from '@canvas/grading/jquery/gradingPeriodSetsApi'
import NewSetForm from 'ui/features/account_grading_standards/react/NewGradingPeriodSetForm' import NewSetForm from '../NewGradingPeriodSetForm'
import * as FlashAlert from '@canvas/alerts/react/FlashAlert' import * as FlashAlert from '@canvas/alerts/react/FlashAlert'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -20,7 +20,7 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {Simulate} from 'react-dom/test-utils' import {Simulate} from 'react-dom/test-utils'
import SearchGradingPeriodsField from 'ui/features/account_grading_standards/react/SearchGradingPeriodsField' import SearchGradingPeriodsField from '../SearchGradingPeriodsField'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -16,9 +16,8 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import CommonEvent from '@canvas/calendar/jquery/CommonEvent/CommonEvent'
import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index' import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index'
import CalendarEventFilter from 'ui/features/calendar/CalendarEventFilter' import CalendarEventFilter from '../CalendarEventFilter'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
const test_events = ( const test_events = (

View File

@ -1,6 +1,3 @@
/* eslint-disable qunit/assert-args */
/* eslint-disable qunit/no-ok-equality */
/* /*
* Copyright (C) 2013 - present Instructure, Inc. * Copyright (C) 2013 - present Instructure, Inc.
* *
@ -19,6 +16,9 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
/* eslint-disable qunit/assert-args */
/* eslint-disable qunit/no-ok-equality */
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import {isArray, isObject, uniq} from 'lodash' import {isArray, isObject, uniq} from 'lodash'
@ -28,7 +28,7 @@ import fcUtil from '@canvas/calendar/jquery/fcUtil'
import denver from 'timezone/America/Denver' import denver from 'timezone/America/Denver'
import juneau from 'timezone/America/Juneau' import juneau from 'timezone/America/Juneau'
import french from 'timezone/fr_FR' import french from 'timezone/fr_FR'
import AgendaView from 'ui/features/calendar/backbone/views/AgendaView' import AgendaView from '../AgendaView'
import EventDataSource from '@canvas/calendar/jquery/EventDataSource' import EventDataSource from '@canvas/calendar/jquery/EventDataSource'
import eventResponse from 'helpers/ajax_mocks/api/v1/calendarEvents' import eventResponse from 'helpers/ajax_mocks/api/v1/calendarEvents'
import plannerItemsResponse from 'helpers/ajax_mocks/api/planner/items' import plannerItemsResponse from 'helpers/ajax_mocks/api/planner/items'

View File

@ -18,7 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import EditAssignmentDetails from 'ui/features/calendar/backbone/views/EditAssignmentDetails' import EditAssignmentDetails from '../EditAssignmentDetails'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'
import timezone from 'timezone' import timezone from 'timezone'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
@ -26,7 +26,7 @@ import detroit from 'timezone/America/Detroit'
import french from 'timezone/fr_FR' import french from 'timezone/fr_FR'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index' import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const fixtures = $('#fixtures') const fixtures = $('#fixtures')

View File

@ -18,7 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import EditPlannerNoteDetails from 'ui/features/calendar/backbone/views/EditPlannerNoteDetails' import EditPlannerNoteDetails from '../EditPlannerNoteDetails'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index' import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index'

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import Calendar from 'ui/features/calendar/jquery/index' import Calendar from '../index'
import CalendarEvent from '@canvas/calendar/jquery/CommonEvent/CalendarEvent' import CalendarEvent from '@canvas/calendar/jquery/CommonEvent/CalendarEvent'
import {useScope as useI18nScope} from '@canvas/i18n' import {useScope as useI18nScope} from '@canvas/i18n'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'

View File

@ -18,7 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import EditAppointmentGroupDetails from 'ui/features/calendar/jquery/EditAppointmentGroupDetails' import EditAppointmentGroupDetails from '../EditAppointmentGroupDetails'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'
import * as tz from '@instructure/moment-utils' import * as tz from '@instructure/moment-utils'

View File

@ -18,8 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import TimeBlockList from 'ui/features/calendar/jquery/TimeBlockList' import TimeBlockList from '../TimeBlockList'
import moment from 'moment'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'
QUnit.module('TimeBlockList', { QUnit.module('TimeBlockList', {
@ -103,7 +102,6 @@ test('should not validate if a row is incomplete', function () {
}) })
test('should still validate if a row is fully blank', function () { test('should still validate if a row is fully blank', function () {
const row = this.me.addRow()
ok(this.me.validate(), 'should validate') ok(this.me.validate(), 'should validate')
}) })
@ -124,8 +122,6 @@ test('should split correctly', function () {
QUnit.module('TimeBlockList with no time blocks', { QUnit.module('TimeBlockList with no time blocks', {
setup() { setup() {
const wrappedDate = str => moment(new Date(str))
this.$holder = $('<table>').appendTo('#fixtures') this.$holder = $('<table>').appendTo('#fixtures')
this.$splitter = $('<a>').appendTo('#fixtures') this.$splitter = $('<a>').appendTo('#fixtures')
this.blocks = [] this.blocks = []

View File

@ -19,13 +19,13 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'
import TimeBlockList from 'ui/features/calendar/jquery/TimeBlockList' import TimeBlockList from '../TimeBlockList'
import TimeBlockRow from 'ui/features/calendar/jquery/TimeBlockRow' import TimeBlockRow from '../TimeBlockRow'
import * as tz from '@instructure/moment-utils' import * as tz from '@instructure/moment-utils'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
import timezone from 'timezone' import timezone from 'timezone'
import detroit from 'timezone/America/Detroit' import detroit from 'timezone/America/Detroit'
import {getI18nFormats} from 'ui/boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const nextYear = new Date().getFullYear() + 1 const nextYear = new Date().getFullYear() + 1
const unfudged_start = tz.parse(`${nextYear}-02-03T12:32:00Z`) const unfudged_start = tz.parse(`${nextYear}-02-03T12:32:00Z`)

View File

@ -23,7 +23,7 @@ import tz from 'timezone'
import chicago from 'timezone/America/Chicago' import chicago from 'timezone/America/Chicago'
import detroit from 'timezone/America/Detroit' import detroit from 'timezone/America/Detroit'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
import {getI18nFormats} from '../../../../../../boot/initializers/configureDateTime' import {getI18nFormats} from '@canvas/datetime/configureDateTime'
const observerEnrollment = { const observerEnrollment = {
id: '1', id: '1',

View File

@ -25,9 +25,9 @@ import {useScope as useI18nScope} from '@canvas/i18n'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
import numberHelper from '@canvas/i18n/numberHelper' import numberHelper from '@canvas/i18n/numberHelper'
import CourseGradeCalculator from '@canvas/grading/CourseGradeCalculator' import CourseGradeCalculator from '@canvas/grading/CourseGradeCalculator'
import GradeSummary from 'ui/features/grade_summary/jquery/index' import GradeSummary from '../index'
import {createCourseGradesWithGradingPeriods} from '../gradebook/GradeCalculatorSpecHelper' import {createCourseGradesWithGradingPeriods} from '../../../../../spec/javascripts/jsx/gradebook/GradeCalculatorSpecHelper'
import useStore from 'ui/features/grade_summary/react/stores' import useStore from '../../react/stores'
const I18n = useI18nScope('gradingGradeSummary') const I18n = useI18nScope('gradingGradeSummary')

View File

@ -16,8 +16,8 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import MockCanvasClient from '../../../support/MockCanvasClient' import MockCanvasClient from '../../../../../../spec/javascripts/support/MockCanvasClient'
import * as Api from 'ui/features/gradebook/react/AssignmentPostingPolicyTray/Api' import * as Api from '../Api'
QUnit.module('AssignmentPostingPolicyTray Api', () => { QUnit.module('AssignmentPostingPolicyTray Api', () => {
QUnit.module('.setAssignmentPostPolicy()', hooks => { QUnit.module('.setAssignmentPostPolicy()', hooks => {

View File

@ -20,8 +20,8 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {waitFor} from '@testing-library/react' import {waitFor} from '@testing-library/react'
import AssignmentPostingPolicyTray from 'ui/features/gradebook/react/AssignmentPostingPolicyTray/index' import AssignmentPostingPolicyTray from '../index'
import * as Api from 'ui/features/gradebook/react/AssignmentPostingPolicyTray/Api' import * as Api from '../Api'
import * as FlashAlert from '@canvas/alerts/react/FlashAlert' import * as FlashAlert from '@canvas/alerts/react/FlashAlert'
QUnit.module('AssignmentPostingPolicyTray', suiteHooks => { QUnit.module('AssignmentPostingPolicyTray', suiteHooks => {

View File

@ -19,7 +19,7 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import Layout from 'ui/features/gradebook/react/AssignmentPostingPolicyTray/Layout' import Layout from '../Layout'
QUnit.module('AssignmentPostingPolicyTray Layout', suiteHooks => { QUnit.module('AssignmentPostingPolicyTray Layout', suiteHooks => {
let $container let $container

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import LatePolicyApplicator from 'ui/features/gradebook/react/LatePolicyApplicator' import LatePolicyApplicator from '../LatePolicyApplicator'
QUnit.module('LatePolicyApplicator#processSubmission', function () { QUnit.module('LatePolicyApplicator#processSubmission', function () {
let assignment let assignment

View File

@ -18,8 +18,8 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import GradebookHelpers from 'ui/features/screenreader_gradebook/helpers' import GradebookHelpers from '../helpers'
import GradebookConstants from 'ui/features/screenreader_gradebook/constants' import GradebookConstants from '../constants'
QUnit.module('GradebookHelpers#noErrorsOnPage', { QUnit.module('GradebookHelpers#noErrorsOnPage', {
setup() { setup() {

View File

@ -19,7 +19,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
import GradebookHeaderMenu from 'ui/features/screenreader_gradebook/jquery/GradebookHeaderMenu' import GradebookHeaderMenu from '../GradebookHeaderMenu'
import SetDefaultGradeDialog from '@canvas/grading/jquery/SetDefaultGradeDialog' import SetDefaultGradeDialog from '@canvas/grading/jquery/SetDefaultGradeDialog'
import CurveGradesDialog from '@canvas/grading/jquery/CurveGradesDialog' import CurveGradesDialog from '@canvas/grading/jquery/CurveGradesDialog'
import React from 'react' import React from 'react'

View File

@ -19,9 +19,9 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import Assignment from '@canvas/assignments/backbone/models/Assignment' import Assignment from '@canvas/assignments/backbone/models/Assignment'
import SubmissionDetailsDialog from 'ui/features/screenreader_gradebook/jquery/SubmissionDetailsDialog' import SubmissionDetailsDialog from '../SubmissionDetailsDialog'
import qs from 'qs' import qs from 'qs'
import 'ui/features/screenreader_gradebook/jst/SubmissionDetailsDialog.handlebars' import '../../jst/SubmissionDetailsDialog.handlebars'
QUnit.module('SubmissionDetailsDialog', { QUnit.module('SubmissionDetailsDialog', {
setup() { setup() {

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import QuizzesNextSpeedGrading from 'ui/features/speed_grader/QuizzesNextSpeedGrading' import QuizzesNextSpeedGrading from '../QuizzesNextSpeedGrading'
const postMessageStub = sinon.stub() const postMessageStub = sinon.stub()
const fakeIframeHolder = { const fakeIframeHolder = {

View File

@ -18,7 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import TimeBlockListManager from '@canvas/calendar/TimeBlockListManager' import TimeBlockListManager from '../TimeBlockListManager'
import moment from 'moment' import moment from 'moment'
QUnit.module('TimeBlockListManager', { QUnit.module('TimeBlockListManager', {

View File

@ -16,8 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import CommonEvent from '@canvas/calendar/jquery/CommonEvent/CommonEvent' import commonEventFactory from '../index'
import commonEventFactory from '@canvas/calendar/jquery/CommonEvent/index'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
QUnit.module('CommonEvent', { QUnit.module('CommonEvent', {

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import EventDataSource from '@canvas/calendar/jquery/EventDataSource' import EventDataSource from '../EventDataSource'
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '@canvas/calendar/jquery/fcUtil'
import * as tz from '@instructure/moment-utils' import * as tz from '@instructure/moment-utils'
import denver from 'timezone/America/Denver' import denver from 'timezone/America/Denver'

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import fcUtil from '@canvas/calendar/jquery/fcUtil' import fcUtil from '../fcUtil'
import * as tz from '@instructure/moment-utils' import * as tz from '@instructure/moment-utils'
import tzInTest from '@instructure/moment-utils/specHelpers' import tzInTest from '@instructure/moment-utils/specHelpers'
import timezone from 'timezone' import timezone from 'timezone'

View File

@ -18,7 +18,7 @@
import $ from 'jquery' import $ from 'jquery'
import 'jquery-migrate' import 'jquery-migrate'
import MissingDateDialogView from '@canvas/due-dates/backbone/views/MissingDateDialogView' import MissingDateDialogView from '../MissingDateDialogView'
QUnit.module('MissingDateDialogView', { QUnit.module('MissingDateDialogView', {
setup() { setup() {

View File

@ -19,7 +19,7 @@
import 'react' import 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {Pill} from '@instructure/ui-pill' import {Pill} from '@instructure/ui-pill'
import StatusPill from '@canvas/grading-status-pill' import StatusPill from '..'
const wrapper = document.getElementById('fixtures') const wrapper = document.getElementById('fixtures')

View File

@ -16,12 +16,9 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import round from '@canvas/round' import * as GradeInputHelper from '../GradeInputHelper'
import * as GradeInputHelper from '@canvas/grading/GradeInputHelper'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
/* eslint-disable qunit/no-identical-names */
QUnit.module('GradeInputHelper', suiteHooks => { QUnit.module('GradeInputHelper', suiteHooks => {
suiteHooks.beforeEach(() => { suiteHooks.beforeEach(() => {
fakeENV.setup({ fakeENV.setup({

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import GradingPeriodsHelper from '@canvas/grading/GradingPeriodsHelper' import GradingPeriodsHelper from '../GradingPeriodsHelper'
const DATE_IN_FIRST_PERIOD = new Date('July 15, 2015') const DATE_IN_FIRST_PERIOD = new Date('July 15, 2015')
const DATE_IN_LAST_PERIOD = new Date('Sep 15, 2015') const DATE_IN_LAST_PERIOD = new Date('Sep 15, 2015')

View File

@ -16,7 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import OutlierScoreHelper, {isUnusuallyHigh} from '@canvas/grading/OutlierScoreHelper' import OutlierScoreHelper, {isUnusuallyHigh} from '../OutlierScoreHelper'
import GRADEBOOK_TRANSLATIONS from '@canvas/grading/GradebookTranslations' import GRADEBOOK_TRANSLATIONS from '@canvas/grading/GradebookTranslations'

View File

@ -16,12 +16,7 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import { import {isPostable, isHideable, extractSimilarityInfo, similarityIcon} from '../SubmissionHelper'
isPostable,
isHideable,
extractSimilarityInfo,
similarityIcon,
} from '@canvas/grading/SubmissionHelper'
QUnit.module('SubmissionHelper', suiteHooks => { QUnit.module('SubmissionHelper', suiteHooks => {
let submission let submission

View File

@ -19,7 +19,7 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import SpecificSections from '@canvas/grading/react/SpecificSections' import SpecificSections from '../SpecificSections'
QUnit.module('SpecificSections', suiteHooks => { QUnit.module('SpecificSections', suiteHooks => {
let $container let $container

View File

@ -16,8 +16,8 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import MockCanvasClient from '../../../support/MockCanvasClient' import MockCanvasClient from '../../../../../spec/javascripts/support/MockCanvasClient'
import * as Api from '@canvas/hide-assignment-grades-tray/react/Api' import * as Api from '../Api'
QUnit.module('HideAssignmentGradesTray Api', suiteHooks => { QUnit.module('HideAssignmentGradesTray Api', suiteHooks => {
const ASSIGNMENT_ID = '23' const ASSIGNMENT_ID = '23'

View File

@ -19,7 +19,7 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import FormContent from '@canvas/hide-assignment-grades-tray/react/FormContent' import FormContent from '../FormContent'
QUnit.module('HideAssignmentGradesTray FormContent', suiteHooks => { QUnit.module('HideAssignmentGradesTray FormContent', suiteHooks => {
let $container let $container

View File

@ -20,7 +20,7 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {waitFor} from '@testing-library/react' import {waitFor} from '@testing-library/react'
import HideAssignmentGradesTray from '@canvas/hide-assignment-grades-tray' import HideAssignmentGradesTray from '..'
import * as Api from '@canvas/hide-assignment-grades-tray/react/Api' import * as Api from '@canvas/hide-assignment-grades-tray/react/Api'
import * as FlashAlert from '@canvas/alerts/react/FlashAlert' import * as FlashAlert from '@canvas/alerts/react/FlashAlert'

View File

@ -19,7 +19,7 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import Layout from '@canvas/hide-assignment-grades-tray/react/Layout' import Layout from '../Layout'
QUnit.module('HideAssignmentGradesTray Layout', suiteHooks => { QUnit.module('HideAssignmentGradesTray Layout', suiteHooks => {
let $container let $container

View File

@ -17,7 +17,7 @@
*/ */
import {isEqual} from 'lodash' import {isEqual} from 'lodash'
import Grid from '@canvas/outcome-gradebook-grid' import Grid from '..'
import fakeENV from 'helpers/fakeENV' import fakeENV from 'helpers/fakeENV'
QUnit.module('OutcomeGradebookGrid', { QUnit.module('OutcomeGradebookGrid', {

View File

@ -16,8 +16,8 @@
* with this program. If not, see <http://www.gnu.org/licenses/>. * with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
import MockCanvasClient from '../../../support/MockCanvasClient' import MockCanvasClient from '../../../../../spec/javascripts/support/MockCanvasClient'
import * as Api from '@canvas/post-assignment-grades-tray/react/Api' import * as Api from '../Api'
QUnit.module('PostAssignmentGradesTray Api', suiteHooks => { QUnit.module('PostAssignmentGradesTray Api', suiteHooks => {
const ASSIGNMENT_ID = '23' const ASSIGNMENT_ID = '23'

View File

@ -19,8 +19,8 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import FormContent from '@canvas/post-assignment-grades-tray/react/FormContent' import FormContent from '../FormContent'
import {EVERYONE} from '@canvas/post-assignment-grades-tray/react/PostTypes' import {EVERYONE} from '../PostTypes'
QUnit.module('PostAssignmentGradesTray FormContent', suiteHooks => { QUnit.module('PostAssignmentGradesTray FormContent', suiteHooks => {
let $container let $container

View File

@ -19,8 +19,8 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import Layout from '@canvas/post-assignment-grades-tray/react/Layout' import Layout from '../Layout'
import {EVERYONE} from '@canvas/post-assignment-grades-tray/react/PostTypes' import {EVERYONE} from '../PostTypes'
QUnit.module('PostAssignmentGradesTray Layout', suiteHooks => { QUnit.module('PostAssignmentGradesTray Layout', suiteHooks => {
let $container let $container

View File

@ -20,7 +20,7 @@ import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import {waitFor} from '@testing-library/react' import {waitFor} from '@testing-library/react'
import PostAssignmentGradesTray from '@canvas/post-assignment-grades-tray' import PostAssignmentGradesTray from '..'
import * as Api from '@canvas/post-assignment-grades-tray/react/Api' import * as Api from '@canvas/post-assignment-grades-tray/react/Api'
import * as FlashAlert from '@canvas/alerts/react/FlashAlert' import * as FlashAlert from '@canvas/alerts/react/FlashAlert'

View File

@ -19,7 +19,7 @@
import React from 'react' import React from 'react'
import ReactDOM from 'react-dom' import ReactDOM from 'react-dom'
import PostTypes from '@canvas/post-assignment-grades-tray/react/PostTypes' import PostTypes from '../PostTypes'
QUnit.module('PostAssignmentGradesTray PostTypes', suiteHooks => { QUnit.module('PostAssignmentGradesTray PostTypes', suiteHooks => {
let $container let $container