intellij-plugin/educational-core/testSrc/com/jetbrains/edu/learning/marketplace/update/MarketplaceSectionUpdateTest.kt [336:392]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - file("build.gradle") file("settings.gradle") } expectedStructure.assertEquals(rootDir) } @Test fun `test sections and lessons swapped and renamed`() { initiateLocalCourse() val remoteCourse = toRemoteCourse { } CourseBuilder(remoteCourse).section("section1", id = 2, index = 1) { lesson("lesson1", id = 2) { eduTask("task3", stepId = 3) { taskFile("src/Task.kt") taskFile("src/Baz.kt") taskFile("test/Tests.kt") } } } remoteCourse.apply { sections[0].apply { index = 2 name = "section2" lessons[0].name = "lesson2" } sortItems() } updateCourse(remoteCourse) assertEquals(2, localCourse.sections.size) localCourse.sections[0].let { section -> assertEquals(2, section.id) assertEquals(1, section.index) assertEquals("section1", section.name) assertEquals("section1", section.presentableName) assertEquals("lesson1", section.lessons[0].name) } localCourse.sections[1].let { section -> assertEquals(1, section.id) assertEquals(2, section.index) assertEquals("section2", section.name) assertEquals("section2", section.presentableName) assertEquals("lesson2", section.lessons[0].name) } val expectedStructure = fileTree { dir("section2") { dir("lesson2") { dir("task1") { dir("src") { file("Task.kt") file("Baz.kt") } dir("test") { file("Tests.kt") - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - intellij-plugin/educational-core/testSrc/com/jetbrains/edu/learning/stepik/hyperskill/update/HyperskillSectionUpdateTest.kt [335:391]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - file("build.gradle") file("settings.gradle") } expectedStructure.assertEquals(rootDir) } @Test fun `test sections and lessons swapped and renamed`() { initiateLocalCourse() val remoteCourse = toRemoteCourse { } CourseBuilder(remoteCourse).section("section1", id = 2, index = 1) { lesson("lesson1", id = 2) { eduTask("task3", stepId = 3) { taskFile("src/Task.kt") taskFile("src/Baz.kt") taskFile("test/Tests.kt") } } } remoteCourse.apply { sections[0].apply { index = 2 name = "section2" lessons[0].name = "lesson2" } sortItems() } updateCourse(remoteCourse) assertEquals(2, localCourse.sections.size) localCourse.sections[0].let { section -> assertEquals(2, section.id) assertEquals(1, section.index) assertEquals("section1", section.name) assertEquals("section1", section.presentableName) assertEquals("lesson1", section.lessons[0].name) } localCourse.sections[1].let { section -> assertEquals(1, section.id) assertEquals(2, section.index) assertEquals("section2", section.name) assertEquals("section2", section.presentableName) assertEquals("lesson2", section.lessons[0].name) } val expectedStructure = fileTree { dir("section2") { dir("lesson2") { dir("task1") { dir("src") { file("Task.kt") file("Baz.kt") } dir("test") { file("Tests.kt") - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -