Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#12939] Release V9.0.0-beta.1 #12960

Merged
merged 244 commits into from
Mar 28, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
244 commits
Select commit Hold shift + click to select a range
ada0e8f
[#12048] Set up github action workflows
samuelfangjw Feb 2, 2023
9954da2
[#12048] v9: Skeleton implementation (#12056)
samuelfangjw Feb 6, 2023
b093018
[#12048] Add isMigrated flag to course (#12063)
daongochieu2810 Feb 9, 2023
ea0e152
[#12048] Add is migrated flag to datastore account (#12070)
daongochieu2810 Feb 10, 2023
035d757
Temporarily disable liquibase migrations
samuelfangjw Feb 10, 2023
a510f0e
[#12048] Create Notification Entity for PostgreSQL migration (#12061)
hhdqirui Feb 10, 2023
548b2fc
[#12048] Create notification DB layer for v9 migration (#12075)
hhdqirui Feb 11, 2023
856b05f
[#12048] Add UsageStatistics entity and db (#12076)
daongochieu2810 Feb 11, 2023
d31d07c
[#12048] Add Account Entity (#12087)
samuelfangjw Feb 15, 2023
69d2f71
[#12048] Create SQL logic for CreateNotificationAction and add releva…
hhdqirui Feb 15, 2023
036165a
[#12048] Create Student, Instructor and User Entities for PostgreSQL …
domlimm Feb 15, 2023
729db70
[#12048] V9: Cleanup and refactor (#12090)
samuelfangjw Feb 15, 2023
3fbe8bc
[#12048] Remove redundant InstructorRole Enum (#12091)
samuelfangjw Feb 17, 2023
831f312
[#12048] Update GetUsageStatisticsAction to include SQL entities (#12…
daongochieu2810 Feb 19, 2023
7540597
[#12048] Update CalculateUsageStatisticsAction to include SQL entitie…
daongochieu2810 Feb 20, 2023
6fb6852
[#12048] Account request v9 migration (#12107)
kevin9foong Feb 20, 2023
784f6f7
[#12048] Add Section and Team entity (#12103)
samuelfangjw Feb 20, 2023
50cd734
[#12048] Migrate logic for GetNotificationAction and add relevant tes…
hhdqirui Feb 21, 2023
6b63f83
[#12048] Add back removed architecture tests (#12113)
samuelfangjw Feb 21, 2023
dc1ea8f
[#12048] Refactor v9 unit tests (#12111)
samuelfangjw Feb 22, 2023
119eee1
[#12048] Migrate accounts db layer (#12114)
samuelfangjw Feb 23, 2023
4a7dd1c
[#12048] Create FeedbackQuestion Entity for PostgreSQL Migration (#12…
cedricongjh Feb 24, 2023
dde3d9e
[#12048] Create User DB Layer for v9 Migration (#12110)
domlimm Feb 24, 2023
9dc344b
[#12048] Migrate deadline extension entity db (#12127)
EuniceSim142 Feb 24, 2023
453899e
[#12048] Create SQL logic for UpdateNotificationAction and add releva…
hhdqirui Feb 25, 2023
e7bb996
Create FeedbackResponse and FeedbackResponseComment entities (#12135)
cedricongjh Feb 26, 2023
96ed702
Update DeleteNotificationAction logic and add tests and udpate other …
hhdqirui Feb 26, 2023
c476621
[#12048] Add remaining question and response subtype entities (#12138)
cedricongjh Feb 26, 2023
46c9146
Update entities to use UUID instead of integer as id
samuelfangjw Mar 2, 2023
8adeed8
[#12048] Create SQL Logic for Get User Actions (#12136)
domlimm Mar 5, 2023
a66ce42
[#12048] Add Unit Tests for UserDb methods (#12163)
domlimm Mar 5, 2023
ad3145b
[#12048] Update GetReadNotificationsAction and MarkNotificationAsRead…
hhdqirui Mar 5, 2023
021d3bc
[#12048] Add logic layer classes (#12165)
samuelfangjw Mar 5, 2023
40451da
[#12048] Migrate gatekeeper (#12166)
samuelfangjw Mar 5, 2023
74a8564
[#12048] AccountRequest Actions Migration (#12141)
kevin9foong Mar 6, 2023
e822077
[#12048] Update access visibility of HibernateUtils utility methods t…
domlimm Mar 6, 2023
a6aaa05
[#12048] Migrate action layer helper methods (#12168)
samuelfangjw Mar 6, 2023
1af11f1
[#12048] Rename AccountRequestDb to AccountRequestsDb (#12170)
kevin9foong Mar 6, 2023
4a47e5d
[#12048] Migrate GetNotificationsAction (#12178)
hhdqirui Mar 8, 2023
e3fb6e5
[#12048] Get Account and Accounts actions (#12176)
domlimm Mar 8, 2023
d498a38
[#12048] Migrate email generator (#12175)
EuniceSim142 Mar 8, 2023
926764f
[#12048] Update MarkNotificationAsReadAction logic for unmigrated acc…
hhdqirui Mar 10, 2023
0780ba9
[#12048] Migrate DeleteAccountAction (#12184)
domlimm Mar 11, 2023
b6ba7db
[#12048] Migrate data bundle (#12199)
samuelfangjw Mar 12, 2023
6e1d4d6
[#12048] Create feedback response question comment db and logic layer…
cedricongjh Mar 12, 2023
bfe9dcd
[#12048] Update FeedbackSession entity and add methods for FeedbackQu…
hhdqirui Mar 13, 2023
f44fffc
[#12048] Migrate get instructor action (#12203)
samuelfangjw Mar 13, 2023
3a51b16
[#12048] Migrate CreateFeedbackQuestionAction (#12217)
hhdqirui Mar 17, 2023
d0ec6f7
[#12048] Migrate GetFeedbackSessionAction (#12212)
kevin9foong Mar 18, 2023
ca21f35
[#12048] Migrate Reset Account Action (#12204)
domlimm Mar 18, 2023
f4764ef
[#12048] Migrate Get Instructors Action (#12210)
domlimm Mar 19, 2023
6c6a82f
[#12048] Migrate Course Action classes (#12092)
EuniceSim142 Mar 20, 2023
5d1507e
[#12048] Migrate GetFeedbackQuestionAction (#12208)
cedricongjh Mar 15, 2023
221af56
[#12048] Migrate PublishFeedbackSessionAction (#12213)
daongochieu2810 Mar 20, 2023
8ac500e
[#12048] Migrate Get Student and Students Action (#12211)
domlimm Mar 20, 2023
dc38877
[#12048] Fix Typo in Naming of DB Tables (#12232)
domlimm Mar 20, 2023
e86575f
[#12048] Migrate *JoinEmailWorkerAction classes (#12229)
EuniceSim142 Mar 22, 2023
3d3442e
Migrate get feedback question recipients action (#12231)
cedricongjh Mar 24, 2023
6d210bd
[#12048] Migrate UnpublishFeedbackSessionAction (#12214)
daongochieu2810 Mar 25, 2023
4d91ef4
[#12048] Migrate Get Instructor Privilege Action (#12245)
domlimm Mar 25, 2023
432e73b
[#12048] Add getSectionName and getTeamName methods to User (#12247)
samuelfangjw Mar 25, 2023
7f6cc22
[#12048] Add published email sent field to feedback sessions (#12248)
samuelfangjw Mar 25, 2023
e558059
[#12048] Migrate Delete Feedback Session Action (#12226)
kevin9foong Mar 25, 2023
6be6dbc
[#12048] Migrate RestoreFeedbackSessionAction (#12257)
daongochieu2810 Mar 28, 2023
45c36f7
[#12048] Migrate get feedback responses action (#12252)
cedricongjh Mar 28, 2023
30f603a
[#12048] Migrate create feedback session action (#12255)
kevin9foong Mar 28, 2023
bb9dd29
[#12048] Migrate BinFeedbackSessionAction (#12256)
daongochieu2810 Mar 29, 2023
95b0776
[#12048] Migrate *EmailAction classes. (#12300)
EuniceSim142 Mar 30, 2023
cfaf9c3
[#12048] Migrate Feedback Session remind-related email worker actions…
EuniceSim142 Mar 31, 2023
be9897e
[#12048] Migrate get feedback response comments action (#12296)
cedricongjh Mar 31, 2023
4cda1b1
[#12048] Migrate RemindFeedbackSessionResultAction (#12303)
kevin9foong Mar 31, 2023
c72d30e
[#12048] Migrate GetFeedbackSessionSubmittedGiverSetAction (#12258)
kevin9foong Mar 31, 2023
adf2664
[#12048] Migrate get has responses action (#12294)
cedricongjh Apr 2, 2023
c24705f
#[12048] Migrate update feedback response comment action (#12319)
cedricongjh Apr 3, 2023
d0d4e71
[#12048 ] Migrate UpdateFeedbackQuestionAction (#12318)
hhdqirui Apr 3, 2023
e53478f
[#12048] Migrate delete feedback response comment action (#12328)
cedricongjh Apr 3, 2023
76a7e1a
[#12048] Migrate create feedback response comment action (#12311)
cedricongjh Apr 3, 2023
d8ff7c2
[#12048] Migrate Feedback Session publish-related email worker action…
EuniceSim142 Apr 4, 2023
97ecda3
[#12048] Migrate DeleteFeedbackQuestionAction (#12337)
hhdqirui Apr 4, 2023
0a6d74f
[#12048] Migrate RemindFeedbackSessionSubmissionAction (#12304)
kevin9foong Apr 5, 2023
fce3203
[#12048] Migrate GetDeadlineExtensionAction (#12326)
kevin9foong Apr 5, 2023
ef2a1eb
[#12048] Migrate UpdateInstructorPrivilegeAction (#12343)
zhaojj2209 Apr 5, 2023
809b707
[#12048] Migrate RegenerateInstructorKeyAction (#12341)
weiquu Apr 6, 2023
f1cfcdf
[#12048] Migrate RegenerateStudentKeyAction (#12350)
weiquu Apr 7, 2023
b7b1253
[#12048] Migrate GetRegkeyValidityAction (#12357)
weiquu Apr 10, 2023
529a90f
[#12048] Migrate UpdateFeedbackSessionAction (#12360)
kevin9foong Apr 13, 2023
d9d5c2f
[#12048] Get Courses Action (#12331)
domlimm Apr 13, 2023
1847688
[#12048] Migrate Delete Student/Students Action (#12241)
domlimm Apr 27, 2023
415ad61
[#12048] Migrate GetFeedbackSessionsAction (#12273)
daongochieu2810 Apr 28, 2023
566a36b
[#12048] Restore sent*email fields (#12365)
EuniceSim142 May 21, 2023
ad8f285
[#12048] Migrate DeleteInstructorAction (#12412)
zhaojj2209 May 22, 2023
582d1f0
[#12048] Migrate UpdateInstructorAction (#12434)
zhaojj2209 Jan 24, 2024
9f5ff7d
[#12048] Migrate SearchInstructorsAction (#12340)
jasonqiu212 Jan 26, 2024
ea1bd1f
fix update and create feedbackquestion action (#12716)
cedricongjh Feb 1, 2024
e1d7242
[#12048] Migrate RemoveDataBundle (#12709)
domlimm Feb 2, 2024
5a323fc
[#12048] Migrate GetOngoingSessionsAction for V9 (#12710)
jayasting98 Feb 3, 2024
c8723d5
[#12048] Migrate GetCourseJoinStatusAction (#12713)
dishenggg Feb 4, 2024
333f582
[#12048] Migrate enroll students action (#12715)
domoberzin Feb 4, 2024
54d7210
[#12048] Refactor email generator (#12723)
NicolasCwy Feb 6, 2024
f0279fa
[#12048] Migrate join course action (#12722)
yuanxi1 Feb 6, 2024
7a021a2
[#12048] Add SQL email generator unit test (#12721)
NicolasCwy Feb 6, 2024
cc0bf4f
[#12048] Migrate CreateInstructorAction (#12706)
mingyuanc Feb 7, 2024
1b4ed92
[#12697] Create generic builder (#12698)
cedricongjh Feb 9, 2024
d9300a2
[#12048] Support for twin db for search + replace datastore test (#12…
weiquu Feb 9, 2024
21ae95e
[#12048] Migrate search account requests action (#12726)
domoberzin Feb 10, 2024
2bd2367
[#12693] Excess padding on edit course details component (#12737)
abdullahsohailcs Feb 10, 2024
13c58fd
[#12048] Migrate PutDataBundleDocumentsAction (#12734)
dishenggg Feb 11, 2024
363a635
[#12048] Finish partial testcases (#12742)
cedricongjh Feb 13, 2024
98778d1
[#12048] Move getTypicalEntity functions to BaseTestCase (#12744)
cedricongjh Feb 14, 2024
33953dc
[#12048] Migrate search students action (#12735)
yuanxi1 Feb 14, 2024
3c0126e
[#12048] Migrate StudentSearchIndexingWorkerAction (#12733)
xenosf Feb 15, 2024
e3fc994
[#12048] Migrate create account action (#12702)
kevin9foong Feb 15, 2024
2ae2446
[#12588] Add tests to question constraint (#12747)
cedricongjh Feb 17, 2024
919ae01
[#12048] Migrate Session Links Recovery Action (#12712)
NicolasCwy Feb 17, 2024
5bfb847
Merge restore deleted to db (#12751)
dishenggg Feb 18, 2024
2bd0ae8
[#12048] Remove typical data bundle from feedbackquestionlogic test (…
cedricongjh Feb 18, 2024
8e757e2
[#12048] Migrate instructor search indexing worker action (#12731)
mingyuanc Feb 18, 2024
c314aa9
[#12048] Add tests for CoursesLogic (#12746)
domoberzin Feb 18, 2024
20712f5
Add test for getUsageStatisticsForTimeRange (#12748)
cedricongjh Feb 19, 2024
02b710d
[#12048] Migrate SubmitFeedbackResponseAction's Logic and Db methods …
FergusMok Feb 19, 2024
d6c67fc
Add testcases for FeedbackResponseCommentsDbTest (#12755)
mingyuanc Feb 19, 2024
31e44fa
[#12048] Migrate FeedbackSessionOpeningSoonRemindersAction (#12740)
EuniceSim142 Feb 19, 2024
70f7801
[#12048] Migrate SubmitFeedbackResponseAction (#12720)
FergusMok Feb 19, 2024
daba8eb
[#12048] Migrate AccountRequestSearchIndexingWorkerAction (#12757)
domoberzin Feb 20, 2024
9744f68
[#12048] Migrate FeedbackSessionClosingRemindersAction (#12743)
EuniceSim142 Feb 20, 2024
2eec90c
[#12048] Migrate FeedbackSessionClosedRemindersAction (#12738)
EuniceSim142 Feb 20, 2024
d7666b7
Add config for e2e sql tests (#12762)
cedricongjh Feb 20, 2024
5d11d27
[#12048] Migrate feedbackSessionPublishedRemindersAction (#12741)
EuniceSim142 Feb 20, 2024
c507049
Revert "Add config for e2e sql tests (#12762)" (#12765)
cedricongjh Feb 20, 2024
225d54f
[#12048] E2E test migration (#12763)
cedricongjh Feb 21, 2024
5b3a96f
[#12048] Add test cases for FeedbackSessionsDb (#12752)
dishenggg Feb 22, 2024
528a67f
[#12048] Migrate FeedbackSessionOpeningRemindersAction (#12739)
EuniceSim142 Feb 24, 2024
9c53527
Merge branch 'master' into v9-migration
weiquu Feb 24, 2024
b697768
[#12048] Resolve merge conflicts (#12776)
weiquu Feb 24, 2024
2495ecd
bump up postgresql version (#12784)
weiquu Feb 24, 2024
df49335
Merge pull request #12771 from TEAMMATES/v9-migration
weiquu Feb 24, 2024
affcc46
[#12048] Migrate student notification page e2e test (#12773)
cedricongjh Feb 24, 2024
fdba184
[#12048] Migrate feedbacktextquestion e2e test (#12775)
cedricongjh Feb 24, 2024
6466d36
migrate InstructorCourseJoinConfirmationPageE2ETest (#12790)
cedricongjh Feb 24, 2024
1d9011f
[#12048] Migrate instructor courses page e2e test (#12789)
cedricongjh Feb 24, 2024
7a22ab8
[#12048] Fix GetSessionResponseStatsActionIT (#12777)
domoberzin Feb 24, 2024
fc0fbd1
Fix incorrect usage of recipient as param (#12797)
domlimm Feb 24, 2024
8125d53
migrate instructor notif e2e (#12792)
dishenggg Feb 24, 2024
bcfc5cb
[#12048] migrate AdminHomePageE2ETest (#12794)
cedricongjh Feb 24, 2024
7da77bb
[#12048] Create IT for GetFeedbackSessionSubmittedGiverSetAction (#12…
domoberzin Feb 24, 2024
3a21860
shift accounts json (#12802)
weiquu Feb 25, 2024
4230284
Migrate instructor feedback edit page e2e test (#12795)
cedricongjh Feb 25, 2024
39534e6
migrate StudentHomePageE2ETest (#12807)
cedricongjh Feb 25, 2024
12e8383
migrate AdminAccountsPageE2ETest (#12806)
cedricongjh Feb 25, 2024
3191fd1
[#12048] Migrate UpdateStudentAction (#12727)
marquestye Feb 25, 2024
a913315
Add locale for java datetime formatter (#12826)
yuanxi1 Feb 25, 2024
b8c9968
[#12048] Move accounts JSON for FeedbackConstSumOptionQuestionE2ETest…
weiquu Feb 25, 2024
a77674f
fix failing component tests (#12837)
weiquu Feb 25, 2024
36cf624
[#12048] Move accounts JSON for FeedbackConstSumRecipientQuestionE2ET…
weiquu Feb 25, 2024
268253e
[#12048] Move accounts JSON for FeedbackContributionQuestionE2ETest (…
weiquu Feb 25, 2024
0fad16b
accounts json (#12809)
weiquu Feb 25, 2024
d5c5ee8
accounts json (#12810)
weiquu Feb 25, 2024
6464b97
accounts json (#12812)
weiquu Feb 25, 2024
6559bbc
accounts json (#12816)
weiquu Feb 25, 2024
1c18ddb
accounts json (#12817)
weiquu Feb 25, 2024
c5bb4ee
[#12048] Migrate account for StudentCourseDetailsPageE2ETest (#12818)
EuniceSim142 Feb 25, 2024
d653637
accounts json (#12819)
weiquu Feb 25, 2024
7256d14
accounts json (#12821)
weiquu Feb 25, 2024
783eb3d
accounts json (#12825)
weiquu Feb 25, 2024
c86a8f1
[#12048] Move accounts JSON for FeedbackRankOptionQuestionE2ETest (#1…
weiquu Feb 25, 2024
9bd8c2b
[#12048] Move accounts JSON for FeedbackRankRecipientQuestionE2ETest …
weiquu Feb 25, 2024
e49baf0
[#12048] Move accounts JSON for InstructorStudentRecordsPageE2ETest (…
EuniceSim142 Feb 25, 2024
cbcab99
[#12048] Revert createaccountaction (#12835)
cedricongjh Feb 25, 2024
500e742
[#12048] Migrate Admin Notifications E2E Test (#12793)
domoberzin Feb 25, 2024
e9cdd63
[#12048] Move accounts JSON for AutomatedSessionRemindersE2ETest (#12…
weiquu Feb 26, 2024
f59f75b
[#12048] Move accounts JSON for InstructorCourseDetailsPageE2ETest (#…
weiquu Feb 26, 2024
398d2cf
[#12048] Move accounts JSON for InstructorCourseEnrollPageE2ETest (#1…
weiquu Feb 26, 2024
455a564
[#12048] Move accounts JSON for InstructorCourseStudentDetailsEditPag…
weiquu Feb 26, 2024
6c2dfa2
[#12048] Move accounts JSON for InstructorCourseStudentDetailsPageE2E…
weiquu Feb 26, 2024
1376426
[#12048] Move accounts JSON for InstructorFeedbackReportPageE2ETest (…
weiquu Feb 26, 2024
914c552
[#12048] Move accounts JSON for InstructorSessionIndividualExtensionP…
EuniceSim142 Feb 26, 2024
bac2a64
migrate accounts (#12834)
EuniceSim142 Feb 26, 2024
21cb04a
[#12048] Move accounts JSON for InstructorStudentListPageE2ETest (#12…
EuniceSim142 Feb 26, 2024
203ec24
[#12048] Migrate AdminSearchPageE2ETest (#12838)
domoberzin Feb 26, 2024
5e2e2a6
[#12048] fix InstructorHomePageE2ETest (#12839)
cedricongjh Feb 26, 2024
7b2a69c
[#12048] Migrate Notification Banner E2E (#12840)
yuanxi1 Feb 26, 2024
2dad48b
[#12048] Migrate GetSessionResultsAction (#12719)
xenosf Feb 27, 2024
30ac90b
[#12783] Fix GitHub actions (#12850)
cedricongjh Feb 28, 2024
0ed34c9
[#12588] Add tests for student list component (#12854)
cedricongjh Mar 2, 2024
c87457c
[#12048] SQL injection test for UsersDbIT (#12851)
cedricongjh Mar 2, 2024
4563dc4
[#12859] create utility to test event emitters (#12860)
cedricongjh Mar 2, 2024
36c2b32
[#12048] Add SQL injection tests in NotificationDbIT (#12858)
jayasting98 Mar 2, 2024
123d2f1
fix gatekeeper logic (#12855)
cedricongjh Mar 2, 2024
0f9d990
[#12048] Add tests for CourseDbIT (#12786)
domoberzin Mar 3, 2024
648d606
[#12048] SQL injection test for AccountRequestsDbIT (#12788)
weiquu Mar 4, 2024
40bb202
[#12048] SQL injection test for AccountsDbIT (#12800)
weiquu Mar 4, 2024
e7e7d49
[#12588] Add unit tests for sessions table (#12863)
cedricongjh Mar 5, 2024
cad9954
[#12048] Migrate GetFeedbackSessionLogsAction (#12862)
weiquu Mar 5, 2024
a8ca0cf
[#12048] SQL injection test for CoursesDbIT (#12801)
weiquu Mar 5, 2024
97f19cb
[#12048] SQL Injection Test for FeedbackResponsesDb (#12848)
EuniceSim142 Mar 5, 2024
e3da52f
[#12048] SQL Injection tests for FeedbackResponseCommentsDbIT (#12853)
EuniceSim142 Mar 5, 2024
b0a8caf
[#12048] Migrate StudentCourseJoinConfirmationPageE2ETest (#12815)
EuniceSim142 Mar 6, 2024
3e254b8
Add check for sql tests in TestNgXml (#12870)
cedricongjh Mar 8, 2024
ef31826
Add testcases for FeedbackResponseCommentsLogicTest (#12769)
mingyuanc Mar 9, 2024
bed1adf
[#12048] Fix account creation (#12871)
cedricongjh Mar 10, 2024
bf5a2ac
[#12048] Add tests for FeedbackQuestionsDb (#12759)
marquestye Mar 10, 2024
b17258b
[#12048] Create Non Course Data Migration Script (#12785)
ziqing26 Mar 10, 2024
0446575
[#12782] Fix Axe tests, remove e2e-cross (#12878)
wkurniawan07 Mar 10, 2024
67404f3
[#12876] Release V9.0.0-beta.0 (#12879)
ziqing26 Mar 10, 2024
b48dabb
[#12048] Change title and message field for notification to "TEXT" (#…
NicolasCwy Mar 10, 2024
e5e8fbd
[#12048] Revert column type for notification title (#12881)
ziqing26 Mar 10, 2024
2caea93
[#12048] Prepare Patch Data Migration Script for Account (#12883)
ziqing26 Mar 10, 2024
9043ae4
[#12048] Patch account and read notification migration (#12884)
ziqing26 Mar 10, 2024
7668295
Revert getFilterQuery for account migration (#12887)
ziqing26 Mar 12, 2024
d32c2cb
[#12588] Add unit tests for visibility panel (#12868)
Andy-W-Developer Mar 12, 2024
3e1718c
[#12048] Add verification migration script (#12890)
NicolasCwy Mar 12, 2024
e385eed
[#12048] Fix get feedback sessions action (#12886)
cedricongjh Mar 12, 2024
2ad2242
[#12048] Add tests for FeedbackQuestionsDbIT (#12781)
dishenggg Mar 12, 2024
b802335
[#12048] Add integration tests for FeedbackResponseCommentsDb (#12849)
xenosf Mar 12, 2024
8722e51
[#12588] Improve test code coverage of QuestionResponsePanelComponent…
leyguan Mar 12, 2024
ccdb6cc
[#12048] Migrate InstructorSearchPageE2ETest (#12891)
domoberzin Mar 13, 2024
931dea4
[#12048] Add integration tests for FeedbackResponsesDb (#12856)
xenosf Mar 14, 2024
2342189
[#12048] V9 migration and verification script optimization (#12896)
FergusMok Mar 14, 2024
2d10806
[#12271] Docs: Upgrade to latest MarkBind version (#12893)
jingting1412 Mar 16, 2024
da601bd
add unit test to rubric-question-edit-details-form (#12907)
cedricongjh Mar 18, 2024
ffb07dd
[#12048] Add SQL injection tests in FeedbackSessionsDbIT (#12857)
jayasting98 Mar 18, 2024
868982f
[#12048] V9 migration verification script optimisation - fetch ReadNo…
NicolasCwy Mar 18, 2024
2eedf1d
[#12048] Patch Usage Statistics Migration (#12889)
ziqing26 Mar 18, 2024
ddd6f09
[#12048] Add deep comparison for entities in `verifyEquals` for E2E (…
domlimm Mar 18, 2024
a34c3c5
[#12048] Migrate InstructorNotificationsPageE2E (#12906)
yuanxi1 Mar 18, 2024
4dc0c6d
[#12048] Migrate FeedbackMsqQuestionE2ETest (#12904)
dishenggg Mar 19, 2024
d4ebcda
Add account request search indexing (#12923)
jayasting98 Mar 22, 2024
9a099c1
Update chrome driver download link in e2e-testing.md (#12924)
nadasuhailAyesh12 Mar 23, 2024
e0c6a2d
[#12048] Add SQL configuration into build.properties and build-dev.pr…
FergusMok Mar 24, 2024
845009e
[#12048] Add SQL description for postgres config (#12931)
FergusMok Mar 24, 2024
3499d2a
[#12588] Improve test code coverage of core components - ToastCompone…
techMedMau Mar 25, 2024
7ba20fc
[#12588] Add unit tests to question edit answer form (#12935)
cedricongjh Mar 25, 2024
1be2adb
add delay to task queuer for indexing account request (#12936)
cedricongjh Mar 25, 2024
716fdc4
Make account req data migration script rerunnable (#12932)
ziqing26 Mar 26, 2024
ca20709
[#12048] Relax read notif verification for migration verification scr…
NicolasCwy Mar 26, 2024
e435f17
[#12920] Create script to migrate noSQL test data to SQL schema forma…
NicolasCwy Mar 26, 2024
a02f444
[#12588] Improve test code coverage of core components - ViewResultsP…
techMedMau Mar 26, 2024
11b8b81
fix resetAccountAction (#12934)
cedricongjh Mar 26, 2024
0cfadef
[#12048] Migrate Feedback Rank Option E2E test (#12902)
mingyuanc Mar 26, 2024
e51132e
[#12048] Migrate FeedbackMcqQuestionE2ETest (#12820)
dishenggg Mar 26, 2024
20df6b6
[#12048] Remove unnecessary loading of datastore entities in Instruct…
dishenggg Mar 27, 2024
a9423da
[#12048] Migrate InstructorCourseDetailsPageE2ETest (#12908)
jayasting98 Mar 27, 2024
78eee47
[#12588] add unit tests for question submission form (#12897)
cedricongjh Mar 28, 2024
9d0cf37
Update developers.json (#12958)
cedricongjh Mar 28, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/axe.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('.gradle/*.gradle*', 'build.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Update Property File
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/component.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('.gradle/*.gradle*', 'build.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Cache eslint
Expand Down
37 changes: 13 additions & 24 deletions .github/workflows/e2e-cross.yml → .github/workflows/e2e-sql.yml
Original file line number Diff line number Diff line change
@@ -1,23 +1,24 @@
name: E2E Tests (cross-browser)
name: E2E Sql Tests

on:
push:
branches:
- master
- release
pull_request:
branches:
- master
- release
schedule:
- cron: "0 0 * * *" # end of every day
- cron: "0 0 * * *" #end of every day
jobs:
E2E-testing:
runs-on: ${{ matrix.os }}
E2E-sql-testing:
runs-on: ubuntu-latest
strategy:
fail-fast: false # ensure both tests run even if one fails
fail-fast: false #ensure both tests run even if one fails
matrix:
include:
- os: ubuntu-latest
browser: chrome
- os: windows-latest
browser: edge
browser: [firefox]
tests: [stable, unstable]
steps:
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
Expand All @@ -34,16 +35,12 @@ jobs:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('.gradle/*.gradle*', 'build.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Update Property File
run: mv src/e2e/resources/test.ci-${{ matrix.browser }}.properties src/e2e/resources/test.properties
- name: Remove Solr setting
if: matrix.os == 'windows-latest'
run: sed -i 's/app.search.service.host=http\\:\/\/localhost\\:8983\/solr/app.search.service.host=/g' src/main/resources/build.template.properties
- name: Run Solr search service + local Datastore emulator
if: matrix.os == 'ubuntu-latest'
run: docker-compose up -d
- name: Create Config Files
run: ./gradlew createConfigs testClasses generateTypes
Expand All @@ -52,16 +49,8 @@ jobs:
- name: Build Frontend Bundle
run: npm run build
- name: Start Server
if: matrix.os == 'ubuntu-latest'
run: |
./gradlew serverRun &
./wait-for-server.sh
- name: Start Tests
if: matrix.os == 'ubuntu-latest'
run: xvfb-run --server-args="-screen 0 1024x768x24" ./gradlew e2eTests
- name: Start Server and Tests
if: matrix.os == 'windows-latest'
run: |
./gradlew runDatastoreEmulator
./gradlew serverRun &
./gradlew e2eTests
run: xvfb-run --server-args="-screen 0 1024x768x24" ./gradlew -P${{ matrix.tests }} e2eTestsSql
2 changes: 1 addition & 1 deletion .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('.gradle/*.gradle*', 'build.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Update Property File
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lnp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*') }}
key: ${{ runner.os }}-gradle-${{ hashFiles('.gradle/*.gradle*', 'build.gradle') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Create Config Files
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@ src/web/dist/*
src/web/webtools/*
filestorage-dev/*
datastore-dev/datastore/*
postgres-data/

!.gitkeep

Expand Down
90 changes: 88 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ apply plugin: "pmd"
apply plugin: "com.github.spotbugs"
apply plugin: "jacoco"
apply plugin: "cz.habarta.typescript-generator"
apply plugin: "org.liquibase.gradle"

def checkstyleVersion = "10.3.2"
def pmdVersion = "6.48.0"
Expand All @@ -26,11 +27,14 @@ buildscript {
exclude group: "org.gradle"
}
classpath "com.google.guava:guava:31.1-jre"
classpath "org.liquibase:liquibase-gradle-plugin:2.1.1"
}
}

configurations {
staticAnalysis

liquibaseRuntime.extendsFrom testImplementation
}

repositories {
Expand Down Expand Up @@ -71,6 +75,8 @@ dependencies {
implementation("org.eclipse.jetty:jetty-webapp")
implementation("org.eclipse.jetty:jetty-annotations")
implementation("org.jsoup:jsoup:1.15.2")
implementation("org.hibernate.orm:hibernate-core:6.1.6.Final")
implementation("org.postgresql:postgresql:42.7.2")

testAnnotationProcessor(testng)

Expand All @@ -79,6 +85,9 @@ dependencies {
testImplementation("org.seleniumhq.selenium:selenium-java:4.3.0")
testImplementation("com.deque.html.axe-core:selenium:4.6.0")
testImplementation(testng)
testImplementation("org.testcontainers:postgresql:1.17.6")
testImplementation("org.liquibase:liquibase-core:4.19.0")
testImplementation("org.mockito:mockito-core:5.1.1")
// For supporting authorization code flow locally
testImplementation("com.google.oauth-client:google-oauth-client-jetty:1.34.1")
// For using Gmail API
Expand All @@ -91,6 +100,8 @@ dependencies {
exclude group: "org.apache.jmeter", module: "bom"
}

liquibaseRuntime("info.picocli:picocli:4.7.1")
liquibaseRuntime(sourceSets.main.output)
}

sourceSets {
Expand All @@ -109,19 +120,33 @@ sourceSets {
srcDir "src/test/java"
srcDir "src/e2e/java"
srcDir "src/lnp/java"
srcDir "src/it/java"
srcDir "src/client/java"
include "**/*.java"
}
resources {
srcDir "src/test/resources"
srcDir "src/e2e/resources"
srcDir "src/lnp/resources"
srcDir "src/it/resources"
srcDir "src/client/resources"
exclude "**/*.java"
}
}
}

liquibase {
activities {
main {
searchPath "${projectDir}"
changeLogFile "src/main/resources/db/changelog/db.changelog-root.xml"
url project.properties['liquibaseDbUrl']
username project.properties['liquibaseUsername']
password project.properties['liquibasePassword']
}
}
}

tasks.withType(cz.habarta.typescript.generator.gradle.GenerateTask) {
jsonLibrary = "jackson2"
optionalAnnotations = [
Expand Down Expand Up @@ -515,8 +540,8 @@ task lnpTests(type: Test) {
}
}

task componentTests(type: Test) {
description "Runs the full unit and integration test suite."
task unitTests(type: Test) {
description "Runs the full unit test suite."
group "Test"
useTestNG()
options.suites "src/test/resources/testng-component.xml"
Expand All @@ -533,6 +558,30 @@ task componentTests(type: Test) {
}
}

task integrationTests(type: Test) {
description "Runs the full integration test suite."
group "Test"
useTestNG()
options.suites "src/it/resources/testng-it.xml"
options.useDefaultListeners = true
ignoreFailures false
maxHeapSize = "1g"
reports.html.required = false
reports.junitXml.required = false
jvmArgs "-ea", "-Xss2m", "-Dfile.encoding=UTF-8"
afterTest afterTestClosure
afterSuite checkTestNgFailureClosure
testLogging {
events "passed"
}
}

task componentTests(type: Test) {
description "Runs the full unit and integration test suite."
group "Test"
dependsOn unitTests, integrationTests
}

task e2eTests {
description "Runs the E2E test suite and retries failed test up to ${numOfTestRetries} times."
group "Test"
Expand Down Expand Up @@ -570,6 +619,43 @@ task e2eTests {
e2eTests.dependsOn "e2eTestTry${id}"
}

task e2eTestsSql {
description "Runs the E2E SQL test suite and retries failed test up to ${numOfTestRetries} times."
group "Test"
}

(1..numOfTestRetries + 1).each { id ->
def isFirstTry = id == 1
def isLastRetry = id == numOfTestRetries + 1
def runUnstableTests = project.hasProperty('unstable')
def outputFileName = runUnstableTests ? "e2e-sql-unstable-test-try-" : "e2e-sql-test-try-"

task "e2eSqlTestTry${id}"(type: Test) {
useTestNG()
options.suites isFirstTry
? (runUnstableTests ? "src/e2e/resources/testng-unstable-e2e-sql.xml" : "src/e2e/resources/testng-e2e-sql.xml")
: file("${buildDir}/reports/${outputFileName}${id - 1}/testng-failed.xml")
options.outputDirectory = file("${buildDir}/reports/${outputFileName}${id}")
options.useDefaultListeners = true
ignoreFailures = !isLastRetry
maxHeapSize = "1g"
reports.html.required = false
reports.junitXml.required = false
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8"
testLogging {
events "passed"
}
afterTest afterTestClosure
if (isFirstTry) {
afterSuite checkTestNgFailureClosure
}
onlyIf {
isFirstTry || file("${buildDir}/reports/${outputFileName}${id - 1}/testng-failed.xml").exists()
}
}
e2eTestsSql.dependsOn "e2eSqlTestTry${id}"
}

task axeTests {
description "Runs the full accessibility test suite and retries failed tests once."
group "Test"
Expand Down
11 changes: 11 additions & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,14 @@ services:
context: solr
ports:
- 8983:8983
postgres:
image: postgres:15.1-alpine
restart: always
volumes:
- ./postgres-data:/var/lib/postgresql/data
ports:
- 5432:5432
environment:
POSTGRES_USER: teammates
POSTGRES_PASSWORD: teammates
POSTGRES_DB: teammates
32 changes: 3 additions & 29 deletions docs/_markbind/layouts/default.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,4 @@
<head-bottom>
<link rel="stylesheet" href="{{ baseUrl }}/stylesheets/main.css">
</head-bottom>

<header fixed>
<navbar placement="top" type="inverse">
<a slot="brand" href="{{ baseUrl }}/index.html" title="Home" class="navbar-brand">
<pic src="{{ baseUrl }}/images/teammateslogo.png" width="150" alt="Logo" caption=""/>
<span style="font-style:italic;font-size:small">[dev docs]</span>
</a>
<li><a href="{{ baseUrl }}/index.html" class="nav-link">Home</a></li>
<li><a href="{{ baseUrl }}/contributing-doc.html" class="nav-link">Contributing</a></li>
<li><a href="https://teammatesv4.appspot.com/" target="_blank" class="nav-link">Product Website <md>:glyphicon-share-alt:</md></a></li>
<li><a href="https://github.com/TEAMMATES/teammates" target="_blank" class="nav-link"><md>:fab-github:</md></a></li>
<li slot="right">
<form class="navbar-form">
<searchbar :data="searchData" placeholder="Search" :on-hit="searchCallback" menu-align-right></searchbar>
</form>
</li>
</navbar>
</header>
{% include "_markbind/layouts/header.md" %}

<div id="flex-body">
<nav id="site-nav" class="fixed-header-padding">
Expand Down Expand Up @@ -59,6 +39,7 @@
</div>
</nav>
<div id="content-wrapper" class="fixed-header-padding">
<breadcrumb/>
{{ content }}
</div>
<nav id="page-nav" class="fixed-header-padding">
Expand All @@ -68,11 +49,4 @@
</nav>
</div>

<footer>

<!-- Support MarkBind by including a link to us on your landing page! -->
<div class="text-center">
<small>[Generated by {{MarkBind}} on {{timestamp}}]</small>
</div>

</footer>
{% include "_markbind/layouts/footer.md" %}
6 changes: 6 additions & 0 deletions docs/_markbind/layouts/footer.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<footer>
<!-- Support MarkBind by including a link to us on your landing page! -->
<div class="text-center">
<small>[Generated by {{MarkBind}} on {{timestamp}}]</small>
</div>
</footer>
21 changes: 21 additions & 0 deletions docs/_markbind/layouts/header.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
<head-bottom>
<link rel="stylesheet" href="{{ baseUrl }}/stylesheets/main.css">
</head-bottom>

<header sticky>
<navbar type="inverse">
<a slot="brand" href="{{ baseUrl }}/index.html" title="Home" class="navbar-brand">
<pic src="{{ baseUrl }}/images/teammateslogo.png" width="150" alt="Logo" caption=""/>
<span style="font-style:italic;font-size:small">[dev docs]</span>
</a>
<li><a href="{{ baseUrl }}/index.html" class="nav-link">Home</a></li>
<li><a href="{{ baseUrl }}/contributing-doc.html" class="nav-link">Contributing</a></li>
<li><a href="https://teammatesv4.appspot.com/" target="_blank" class="nav-link">Product Website <md>:glyphicon-share-alt:</md></a></li>
<li><a href="https://github.com/TEAMMATES/teammates" target="_blank" class="nav-link"><md>:fab-github:</md></a></li>
<li slot="right">
<form class="navbar-form">
<searchbar :data="searchData" placeholder="Search" :on-hit="searchCallback" menu-align-right></searchbar>
</form>
</li>
</navbar>
</header>
4 changes: 1 addition & 3 deletions docs/_markbind/variables.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
<variable name="example">
To inject this HTML segment in your MarkBind files, use {{ example }} where you want to place it.
More generally, surround the segment's id with double curly braces.
</variable>

<variable from="variables.json" />
</variable>
Loading
Loading