diff --git a/src/course-outline/CourseOutline.test.jsx b/src/course-outline/CourseOutline.test.jsx
index 29ab59b91..31ff68bfe 100644
--- a/src/course-outline/CourseOutline.test.jsx
+++ b/src/course-outline/CourseOutline.test.jsx
@@ -47,7 +47,7 @@ import CourseOutline from './CourseOutline';
import configureModalMessages from '../generic/configure-modal/messages';
import pasteButtonMessages from '../generic/clipboard/paste-component/messages';
import messages from './messages';
-import { getClipboardUrl } from '../generic/data/api';
+import {getApiBaseUrl, getClipboardUrl} from '../generic/data/api';
import headerMessages from './header-navigations/messages';
import cardHeaderMessages from './card-header/messages';
import enableHighlightsModalMessages from './enable-highlights-modal/messages';
@@ -126,10 +126,6 @@ jest.mock('@dnd-kit/core', () => ({
closestCorners: jest.fn(),
}));
-jest.mock('./data/api', () => ({
- ...jest.requireActual('./data/api'),
- createDiscussionsTopics: jest.fn().mockResolvedValue(undefined),
-}));
// eslint-disable-next-line no-promise-executor-return
const sleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
@@ -176,6 +172,10 @@ describe('', () => {
courseId, gradedOnly: true, validateOras: true, all: true,
}))
.reply(200, courseLaunchMock);
+ // add mock for getApiBaseUrl()}/api/discussions/v0/course/${courseId}/sync_discussion_topics
+ axiosMock
+ .onPost(`${getApiBaseUrl()}/api/discussions/v0/course/${courseId}/sync_discussion_topics`)
+ .reply(200, {});
await executeThunk(fetchCourseOutlineIndexQuery(courseId), store.dispatch);
await executeThunk(syncDiscussionsTopics(courseId), store.dispatch);
});
@@ -243,8 +243,8 @@ describe('', () => {
async () => fireEvent.change(optionDropdown, { target: { value: VIDEO_SHARING_OPTIONS.allOff } }),
);
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify({
+ expect(axiosMock.history.post.length).çÏ(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify({
metadata: {
video_sharing_options: VIDEO_SHARING_OPTIONS.allOff,
},
@@ -266,8 +266,8 @@ describe('', () => {
async () => fireEvent.change(optionDropdown, { target: { value: VIDEO_SHARING_OPTIONS.allOff } }),
);
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify({
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify({
metadata: {
video_sharing_options: VIDEO_SHARING_OPTIONS.allOff,
},
@@ -412,10 +412,10 @@ describe('', () => {
});
const newUnitButton = await within(subsectionElement).findByTestId('new-unit-button');
await act(async () => fireEvent.click(newUnitButton));
- expect(axiosMock.history.post.length).toBe(1);
+ expect(axiosMock.history.post.length).toBe(2);
const [section] = courseOutlineIndexMock.courseStructure.childInfo.children;
const [subsection] = section.childInfo.children;
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify({
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify({
parent_locator: subsection.id,
category: COURSE_BLOCK_NAMES.vertical.id,
display_name: COURSE_BLOCK_NAMES.vertical.name,
@@ -446,11 +446,11 @@ describe('', () => {
const dummyBtn = await screen.findByRole('button', { name: 'Dummy button' });
fireEvent.click(dummyBtn);
- waitFor(() => expect(axiosMock.history.post.length).toBe(1));
+ waitFor(() => expect(axiosMock.history.post.length).toBe(2));
const [section] = courseOutlineIndexMock.courseStructure.childInfo.children;
const [subsection] = section.childInfo.children;
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify({
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify({
type: COMPONENT_TYPES.libraryV2,
category: 'vertical',
parent_locator: subsection.id,
@@ -891,8 +891,8 @@ describe('', () => {
const saveButton = await findByTestId('configure-save-button');
await act(async () => fireEvent.click(saveButton));
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify({
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify({
publish: 'republish',
metadata: {
visible_to_staff_only: true,
@@ -991,8 +991,8 @@ describe('', () => {
await act(async () => fireEvent.click(saveButton));
// verify request
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify(expectedRequestData));
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify(expectedRequestData));
// reopen modal and check values
await act(async () => fireEvent.click(subsectionDropdownButton));
@@ -1127,8 +1127,8 @@ describe('', () => {
await act(async () => fireEvent.click(saveButton));
// verify request
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify(expectedRequestData));
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify(expectedRequestData));
// reopen modal and check values
await act(async () => fireEvent.click(subsectionDropdownButton));
@@ -1247,8 +1247,8 @@ describe('', () => {
await act(async () => fireEvent.click(saveButton));
// verify request
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify(expectedRequestData));
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify(expectedRequestData));
// reopen modal and check values
await act(async () => fireEvent.click(subsectionDropdownButton));
@@ -1347,8 +1347,8 @@ describe('', () => {
await act(async () => fireEvent.click(saveButton));
// verify request
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify(expectedRequestData));
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify(expectedRequestData));
// reopen modal and check values
await act(async () => fireEvent.click(subsectionDropdownButton));
@@ -1443,8 +1443,8 @@ describe('', () => {
await act(async () => fireEvent.click(saveButton));
// verify request
- expect(axiosMock.history.post.length).toBe(1);
- expect(axiosMock.history.post[0].data).toBe(JSON.stringify(expectedRequestData));
+ expect(axiosMock.history.post.length).toBe(2);
+ expect(axiosMock.history.post[1].data).toBe(JSON.stringify(expectedRequestData));
// reopen modal and check values
await act(async () => fireEvent.click(subsectionDropdownButton));