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

Test #5

Open
wants to merge 207 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
207 commits
Select commit Hold shift + click to select a range
391efac
[#10279] Restore all feedback sessions causes error (#10280)
jtankw3 Jul 6, 2020
3f076d0
[#10213] Fix clickable area / cursor related issues (#10275)
ccyccyccy Jul 6, 2020
25cc37c
[#10245] Per Question CSV Download in Session Result (#10271)
t-cheepeng Jul 6, 2020
1557c72
[#10245] UAT Fix: Instructor Search Page (#10273)
madanalogy Jul 6, 2020
05f722b
[#10264] Encrypt Feedback Response ID (#10283)
madanalogy Jul 8, 2020
5da3cd2
[#10245] Add send email feature for admin search (#10270)
ccyccyccy Jul 8, 2020
4d21afb
[#10161] Extract data out to dedicated file from instructor help page…
edwardkang0925 Jul 8, 2020
8461a63
[#10245] Add and refactor collapse animations (#10281)
ccyccyccy Jul 9, 2020
f3cbea3
[#10245] Show error details on submit feedback (#10291)
ccyccyccy Jul 9, 2020
c4f4d4b
[#10245] UAT Round 2 Fix: Sorting of floating point numbers (#10290)
t-cheepeng Jul 10, 2020
ad54d25
[#10042] improve ui for mobile compatibility ranked question (#10289)
nodermatt Jul 10, 2020
560eb09
[#10019] Add secure flag to cookie in server response (#10292)
madanalogy Jul 10, 2020
0b8966c
[#10245] UAT Round 2: Fix Help Page Links (#10274)
t-cheepeng Jul 10, 2020
7ce05de
[#10245] Reduce front-end bundle size (#10277)
wkurniawan07 Jul 10, 2020
a106602
[#10245] Change status codes for non-required entities from 404 to 20…
wkurniawan07 Jul 10, 2020
a5f15f9
[#10264] Remove Student Google ID from Output (#10287)
madanalogy Jul 11, 2020
b5a1a29
[#10305] CollapseAnim causing elements to be cut off (#10306)
jtankw3 Jul 13, 2020
8f11664
[#10307] Fix toast timeout bug (#10308)
jtankw3 Jul 13, 2020
3f7f9ba
[#9474] Change Email Validation to Enforce TLD (#10300)
madanalogy Jul 13, 2020
ff989e0
[#10245] Improve rich-text editors (#10294)
wkurniawan07 Jul 14, 2020
b72ffa6
[#9536] Fix Student Course Detail Page E2E Test (#10310)
jtankw3 Jul 14, 2020
5deb81a
[#9495] Add cancel button when editing an existing session (#10301)
madanalogy Jul 14, 2020
1df7a07
[#10212] Refactor search service's searchInstructor method (#10282)
edwardkang0925 Jul 15, 2020
1bbf28c
[#10299] Fix some issues from UAT round 3 (#10312)
wkurniawan07 Jul 15, 2020
70f388d
[#10213] Add default sorting of tables and pages (#10288)
t-cheepeng Jul 15, 2020
8677046
[#10264] Remove Instructor Google ID from Output (#10295)
madanalogy Jul 15, 2020
dd9977e
[#10264] Hide MCQ/MSQ/Rubric Question Weights from Students (#10320)
madanalogy Jul 17, 2020
faf15f9
[#10042] Improve UI for Mobile Compatibility (#10324)
t-cheepeng Jul 17, 2020
966c11c
[#9673] Fix feedback session names with '+' encoding (#10313)
madanalogy Jul 18, 2020
334f3a4
[#9536] Adjust wait to help flakiness (#10311)
jtankw3 Jul 18, 2020
9ebb3b5
[#10264] Hide FeedbackSession and Course Data (#10328)
madanalogy Jul 18, 2020
9a64ae2
[#10299] Fix some misaligned features compared to V6 (#10318)
wkurniawan07 Jul 19, 2020
965d5d7
[#10322] Rich text editor breaks when moved during reorder (#10323)
jtankw3 Jul 19, 2020
ffceb18
[#10330] Sort newest courses on top on instructor home page (#10361)
niqiukun Jul 20, 2020
67a6636
[#10337] Fix instructor edit student details: form fields are not ali…
niqiukun Jul 20, 2020
af976e4
[#10299] Remove unused code (#10365)
wkurniawan07 Jul 20, 2020
2f0dfb7
[#9551] Standardize modals (#10293)
ccyccyccy Jul 20, 2020
1ac404a
[#10370] Remove extra border around rich text editor (#10371)
niqiukun Jul 20, 2020
3feb12a
[#9356] Improve UI for loading indicators (#10309)
t-cheepeng Jul 21, 2020
99436f3
[#10299] UAT Round 3 fixes (#10326)
ccyccyccy Jul 21, 2020
48fc5ba
[#10304] Instructor adding questions: new question does not inherit s…
xpdavid Jul 21, 2020
5b516ce
[#10355] Use default order for MCQ response summary (#10369)
niqiukun Jul 21, 2020
c57408f
[#10325] Google blocking E2E login on production server (#10327)
jtankw3 Jul 21, 2020
c9d43b3
Add ordering prefix to rubric choices and sort them (#10378)
ccyccyccy Jul 22, 2020
cba514e
[#10335] Instructor course details page: add initial sorting to stude…
niqiukun Jul 22, 2020
d0d9c0b
[#10347] Fix inconsistency in indicating end of the day (#10377)
ccyccyccy Jul 22, 2020
69fc0b9
[#10331] Instructor course page: add sorting to archived/deleted cour…
niqiukun Jul 22, 2020
77e35f3
[#10372] Remove modal padding and outline around close button while o…
niqiukun Jul 22, 2020
6931510
[#10345] Add header for view role privileges modal (#10373)
niqiukun Jul 22, 2020
9746ef8
[#10351] Instructor session results page: allow entering editing mode…
niqiukun Jul 22, 2020
157a865
[#10374] Instructor course details page: loading spinner does not dis…
t-cheepeng Jul 22, 2020
9ac03d8
[#9823] Fix feedback made on behalf of team showing as anonymous (#1…
madanalogy Jul 22, 2020
dbc978d
[#10297] Tooltips behaviour improvement (#10321)
ccyccyccy Jul 22, 2020
a29a80e
[#10384] Fix loading spinner blocked by navbar (#10385)
ccyccyccy Jul 22, 2020
fd47435
[#10336] Make instructor course details page table styling more consi…
ccyccyccy Jul 22, 2020
be19ce3
[#10341] Set panel to expand on load #10389
ccyccyccy Jul 23, 2020
189ce0a
[#10350] Change filename of csv file downloaded (#10394)
ccyccyccy Jul 24, 2020
f2cf083
[#9517] Document API layer design principles/policies (#10393)
wkurniawan07 Jul 24, 2020
c4f45f7
[#10299] Refactor instructor help page (#10329)
wkurniawan07 Jul 24, 2020
39013a4
[#10299] UAT round 3 fixes (#10316)
ccyccyccy Jul 24, 2020
1d25a3b
[#10368] Instructor home page: Fix changing sort by results in duplic…
ccyccyccy Jul 24, 2020
33d28f8
[#10243] Change multi level panel color to match V6 (#10395)
ccyccyccy Jul 24, 2020
cac8c04
[#10278] Update supported browsers (#10379)
t-cheepeng Jul 24, 2020
bbcff7f
[#10343] Fix unnecessary bottom line for last response (#10392)
madanalogy Jul 24, 2020
f32c171
[#10243] Darken hover colour of dropdown items (#10404)
t-cheepeng Jul 24, 2020
568aa61
[#10243] Add border to per question view and margin to sortable table…
t-cheepeng Jul 24, 2020
08f1448
[#9764] Add instructors as respondents in remind modal (#10380)
madanalogy Jul 25, 2020
3e7bb10
[#10243] Loading spinners for show buttons (#10403)
t-cheepeng Jul 25, 2020
11c847d
[#10299] Fix Distribute Points (among recipients) Question Submission…
madanalogy Jul 25, 2020
b13cbae
[#10400] Inconsistent URL encoding (#10401)
jtankw3 Jul 27, 2020
4dc1383
[#10356] Instructor view results: multiple photo popups (#10388)
t-cheepeng Jul 27, 2020
55c6a36
[#10213] Improve error handling (#10376)
t-cheepeng Jul 27, 2020
d8667b1
[#10427] Fix formatting for answer constraints (#10479)
ccyccyccy Jul 28, 2020
a9fedef
[#10466] Instructor enroll students: Make table span entire panel (#1…
ccyccyccy Jul 28, 2020
1ff44d2
[#10470] Add v6 instructor join link support (#10472)
madanalogy Jul 28, 2020
a33a827
[#10421] Drop-down menus: allow opening in new tab (#10484)
t-cheepeng Jul 29, 2020
eea9a68
[#10462] CSV: Split rank received into multiple cells (#10485)
ccyccyccy Jul 29, 2020
1c3bddf
[#10333] Make tooltip more readable (#10486)
ccyccyccy Jul 29, 2020
53c465c
[#10458] Make input fields more compact (#10487)
ccyccyccy Jul 29, 2020
4a2855b
[#10429] Remove comment save button for question submission form (#10…
ccyccyccy Jul 29, 2020
e2eb385
[#10465] Instructor enroll students: error message should be a modal …
t-cheepeng Jul 29, 2020
6c1ca23
[#10419] Instructor moderating submissions goes into student's home p…
t-cheepeng Jul 29, 2020
b51fcc0
[#10448] Add question to session: team-contribution questions should …
xpdavid Jul 29, 2020
1dfc7df
[#10467] Instructor courses page: Fix courses default sorting not wor…
ccyccyccy Jul 29, 2020
0281ff8
[#10410] Increase duration of toast to 10 seconds (#10489)
ccyccyccy Jul 29, 2020
854c7cd
[#10332] Sorting arrow icon change (#10492)
ccyccyccy Jul 29, 2020
e92d8d7
[#10455] Add a redirect banner for users to switch versions (#10471)
madanalogy Jul 29, 2020
38e58c0
[#10493] Fix tooltip placements (#10494)
ccyccyccy Jul 30, 2020
b709301
[#10450] [#10442] [#10422] UAT Round 4: Visiblity related UI fixes (#…
t-cheepeng Jul 30, 2020
dcaeed2
[#10402] [#10423] [#10432] UAT Round 4: Comment related UI fixes (#10…
t-cheepeng Jul 30, 2020
84fd152
[#10441] [#10443] [#10444] Fix add instructor to course (#10497)
madanalogy Jul 30, 2020
27a301c
[#10437] [#10430] [#10434] [#10457] Layout changes for question editi…
ccyccyccy Jul 30, 2020
fddd34d
[#10435] [#10445] [#10452] [#10456] [#10461] UAT Round 4: Statistics …
wkurniawan07 Jul 31, 2020
908384d
[#10411] [#10420] [#10426] [#10431] [#10451] UAT round 4 fixes (#10491)
wkurniawan07 Jul 31, 2020
a63a84e
[#10243] Adjust site-wide font/padding settings and modal settings (#…
wkurniawan07 Jul 31, 2020
29e68db
[#10357] [#10454] [#10460] UAT Round 4: Statistics related UI fixes, …
wkurniawan07 Jul 31, 2020
6b91a57
[#10506] User cannot join multiple courses (#10507)
wkurniawan07 Aug 1, 2020
2cd9819
[#10517] Preview as instructor link not working (#10519)
jtankw3 Aug 2, 2020
eb0923e
[#10409] [#10418] [#10447] [#10502] UAT Round 4 Fix: Loading indicato…
t-cheepeng Aug 2, 2020
a479e4e
[#10243] Button style changes (#10399)
ccyccyccy Aug 3, 2020
d52bd1a
[#10528] [#10529] [#10531] [#10533] UAT round 5: statistics-related f…
wkurniawan07 Aug 3, 2020
10b7b13
[#10537] Fix respondent list sort (#10538)
ccyccyccy Aug 4, 2020
1a2558d
[#10526] Make delete session tooltips more detailed (#10539)
ccyccyccy Aug 4, 2020
b05e782
Prevent tooltip from showing on focus (#10540)
ccyccyccy Aug 5, 2020
f59ac54
[#10446] Course instructor edit detail: Styling fixes (#10542)
ccyccyccy Aug 5, 2020
5c6aa8c
[#10415] [#10416] [#10417] No response panel related fixes (#10548)
t-cheepeng Aug 5, 2020
699ee2b
[#10522] Manually add underline to tooltips (#10546)
ccyccyccy Aug 5, 2020
a342048
[#10510][#10346][#10463] Styling fixes (#10547)
ccyccyccy Aug 5, 2020
e7b1dcd
[#10505] Render tinymce only if in viewport (#10552)
wkurniawan07 Aug 5, 2020
d612b64
[#10518] [#10391] Animation fixes (#10551)
ccyccyccy Aug 6, 2020
2dd02dd
[#10533] Fix animation at instructor help page (#10554)
ccyccyccy Aug 6, 2020
23e5d95
[#10509] [#10524] [#10525] [#10535] Add loading indicators when fetch…
madanalogy Aug 6, 2020
748cc55
[#10354] [#10428] [#10511] [#10530] [#10545] UAT round 5 fixes: misce…
wkurniawan07 Aug 7, 2020
9ace41b
[#10428] Remove excessive toast showing in submission page (#10558)
wkurniawan07 Aug 9, 2020
62ae715
[#10559] Pages with rich text editors cannot be displayed (#10563)
wkurniawan07 Aug 9, 2020
8125949
[#10565] Instructor course details page: fix sortable header for stud…
niqiukun Aug 11, 2020
0819321
[#10574] [#10575] [#10576] Fix back-end related issues (#10583)
wkurniawan07 Aug 13, 2020
0e9b607
Fix redirect-banner.component dismiss button (#10571)
madanalogy Aug 13, 2020
24897e7
[#9536] Instructor Feedback Edit Page E2E Test (#10236)
jtankw3 Aug 13, 2020
c30e09f
[#10562][#10520][#10514][#10515][#10513][#10512][#10536] Minor UI fix…
niqiukun Aug 13, 2020
e900cd3
[#10577] [#10582] [#10585] [#10587] [#10588] [#10589] Fix front-end r…
wkurniawan07 Aug 14, 2020
6925724
[#10600] Update tinymce to 5.4.1 (#10601)
wkurniawan07 Aug 15, 2020
80ba8e6
[#7594] design.md: update content and diagrams and remove unnecessary…
wkurniawan07 Aug 15, 2020
bfc5595
[#10584] [#10606] [#10607] Fix MSQ question settings and modal scroll…
wkurniawan07 Aug 16, 2020
09a4bfe
[#10591] Release V7.0.0 (#10592)
wkurniawan07 Aug 16, 2020
8765a96
[#10593] Disable view/download session results button according to in…
niqiukun Aug 17, 2020
f48c957
[#10614][#10616] Fix session results page issues (#10617)
niqiukun Aug 18, 2020
1ebe7a9
[#9536] Instructor Feedback Sessions Page E2E Test (#10521)
jtankw3 Aug 19, 2020
5c2f44f
[#10604] in JsonUtils.java parse method could be static (#10609)
konkos Aug 20, 2020
7ac01ad
[#10397] Create API for receiving all responses of a feedback questio…
wkurniawan07 Aug 20, 2020
af7995b
[#10397] Add frontend validation for feedback submission (#10398)
madanalogy Aug 21, 2020
21a7a05
[#10626] Update docs post organisation review (#10628)
madanalogy Aug 23, 2020
7c0bb45
[#10627] Update developers.json (#10629)
madanalogy Aug 23, 2020
c2ad78c
[#10638] Add guard clause to recipient submission form model update #…
madanalogy Aug 24, 2020
a04afc0
[#9936) Add logging and swap if condition order for expensive operati…
xpdavid Aug 24, 2020
add68ab
[#10635] Remove extra comma from angular json (#10636)
moziliar Aug 24, 2020
d454451
[#10642] Update developers.json (#10643)
madanalogy Aug 24, 2020
c991210
[#10630] Fix Typo in EmailGenerator.java (#10644)
konkos Aug 27, 2020
b7c22a9
[#10516] Features page: reduce indentation (#10602)
moziliar Aug 30, 2020
a02a587
[#10647] Improve student results page statistics for self-evaluation …
wkurniawan07 Aug 31, 2020
34fb6e6
[#10658] Do not reset feedback responses for question (#10660)
wkurniawan07 Aug 31, 2020
ff651e9
[#10634] Run component tests only once in CI (#10637)
wkurniawan07 Aug 31, 2020
5bbb018
Fix recipient set for instructor team question (#10666)
madanalogy Sep 1, 2020
dc2fbb5
[#9536] Feedback Submit Page E2E Test (#10549)
jtankw3 Sep 1, 2020
667bf95
[#9536] Fix various issues in E2E tests (#10679)
jtankw3 Sep 2, 2020
1072aa8
[#10684] Fix CI tests (#10685)
rrtheonlyone Sep 3, 2020
17c1c69
[#9536] Feedback Text Question E2E Test (#10667)
jtankw3 Sep 3, 2020
bc5c1ff
[#10656] Instructor copying sessions: essay questions cannot be copie…
xpdavid Sep 3, 2020
49beaa7
[#10681] Make sure Maximum Receiver Count value is being used when ge…
rrtheonlyone Sep 3, 2020
cddee18
[#10594] Fix instructor page course edit spinner (#10654)
brandedcow Sep 4, 2020
5694b80
[#9536] Feedback MCQ/MSQ Question E2E Test (#10668)
jtankw3 Sep 5, 2020
6d182b0
[#10631] Remove unnecessary checks in InstructorPrivileges.java (#10646)
konkos Sep 6, 2020
eb31d08
[#10613] Reconfigure InstructorFeedbackSubmission access control (#10…
madanalogy Sep 7, 2020
fdcfc9f
[#10697] Performance improvements when getting session result as stud…
xpdavid Sep 7, 2020
5eb457f
[#10650] Add null check for getFeedbackSession in API actions (#10653)
madanalogy Sep 7, 2020
164b161
[#10645] [#10688] Fix download result function and user links in admi…
wkurniawan07 Sep 8, 2020
2a1a381
[#10704] Update developers.json (#10706)
madanalogy Sep 12, 2020
14033ad
[#9536] Feedback NumScale Question E2E Test (#10669)
jtankw3 Sep 12, 2020
53f77e8
[#9536] Feedback Contribution Question E2E Test (#10671)
jtankw3 Sep 12, 2020
9369f96
[#9536] Feedback Rank Questions E2E Tests (#10672)
jtankw3 Sep 13, 2020
1b73191
[#9536] Feedback ConstSum Questions E2E Tests (#10670)
jtankw3 Sep 13, 2020
bdf0741
[#9536] Feedback Rubric Question E2E Test (#10673)
jtankw3 Sep 13, 2020
d2f3d0b
[#9536] Course Join Confirmation Page E2E Tests (#10707)
jtankw3 Sep 14, 2020
a641cd2
[#10598] Combine teammates.ui.automated and teammates.ui.webapi into …
wkurniawan07 Sep 16, 2020
e20a59c
[#10715] Instructor viewing results: No responses shown for non-quest…
wkurniawan07 Sep 18, 2020
185145b
Merge branch 'release'
wkurniawan07 Sep 19, 2020
833aae6
[#10711] Link to Feature Overview in CONTRIBUTING.md do not lead to t…
Wimpzer Sep 19, 2020
c8cdf28
[#10655] Instructor enroll students: fix incorrect intermediate state…
helloImHai Sep 20, 2020
12e8e9b
[#10713] Links in CONTRIBUTING.md and SUPPORT.md do not lead to the c…
Wimpzer Sep 21, 2020
c1f99b0
[#10723] Missing call to AuthService.getAuthUser for public pages (#1…
wkurniawan07 Sep 23, 2020
7e825ee
[#10705] [#10718] Improve user flow for unregistered student and inva…
wkurniawan07 Sep 23, 2020
9f5f3e6
Merge branch 'release'
wkurniawan07 Sep 23, 2020
7aff652
[#10687] Re-organize test code to follow the same package structure a…
wkurniawan07 Sep 24, 2020
885f944
[#10581] Add top level domain hint for invalid email error (#10633)
moziliar Sep 25, 2020
125e4f8
[#10708] Trim cell values of Enroll Students page (#10727)
helloImHai Sep 26, 2020
8e2cccc
[#10726] Change banner message for end of v6 (#10729)
madanalogy Sep 26, 2020
4cce50f
[#10726] Update developers.json (#10730)
madanalogy Sep 26, 2020
5bbb5aa
[#9536] Reduce E2E tests flakiness due to underlying test structure (…
wkurniawan07 Sep 29, 2020
492aaec
Add InstructorHomePageE2ETest (#10710)
jtankw3 Sep 29, 2020
a5cad84
[#10725] Show student name more prominently (#10735)
ankita2210 Oct 2, 2020
633cbe8
[#10703] Fix warning when instructor change visibility of question (#…
helloImHai Oct 2, 2020
1c2b94d
[#10315] Refactor search result for instructor search (#10709)
moziliar Oct 3, 2020
5fad3e2
[#10664] Student trying to access non-existent session: give a better…
sjkadali Oct 6, 2020
15e79e0
[#10702] Change status code to 400 for non-UTF8 inputs (#10763)
wkurniawan07 Oct 6, 2020
60400d6
[#10595] In case of no recipient for RGQ render more descriptive To f…
EmberCS15 Oct 7, 2020
1c2f395
[#10739] Reduce bytes transferred for I/O requests (#10740)
wkurniawan07 Oct 10, 2020
a002792
[#10768] Client scripts do not work on production server in V7 (#10769)
wkurniawan07 Oct 10, 2020
018bec4
[#10544] Add feedback session copy to multiple courses (#10555)
madanalogy Oct 11, 2020
15c080d
[#10772] Update contributing guide for label changes (#10773)
madanalogy Oct 11, 2020
ae95f92
[#10774] Update developers.json (#10776)
madanalogy Oct 11, 2020
b01bbf2
[#10753] Removed duplicate session result objects (#10771)
EmberCS15 Oct 12, 2020
d9f5aeb
[#10568] Admin bulk-adding instructors: allow separation by tabs (#10…
IndeedSi Oct 12, 2020
97ab098
[#10780] Remove redirect-banner component (#10781)
madanalogy Oct 13, 2020
c464fca
[#3810] Create a new 'under maintenance' version (#10775)
wkurniawan07 Oct 13, 2020
be1c96e
[#9536] Instructor Course Student Details Page E2E Test (#10779)
jtankw3 Oct 14, 2020
0d139ff
Add InstructorCourseStudentDetailsEditPageE2ETest (#10752)
jtankw3 Oct 17, 2020
481c7a9
[#9536] Instructor Course Details Page E2E Test (#10766)
jtankw3 Oct 17, 2020
036afd3
[#9536] Migrate remaining Admin E2E tests (#10784)
wkurniawan07 Oct 20, 2020
ebc9627
[#9536] Migrate parts of instructor search/student list/records page …
wkurniawan07 Oct 21, 2020
ac349b8
[#10523] Edit session button should open the sessions page in edit mo…
jasonbch Oct 22, 2020
011b82c
[#10802] student viewing results: 'not authorized' error shown even i…
wkurniawan07 Oct 23, 2020
c12184f
[#10739] Reduce number of unnecessary API requests (#10792)
wkurniawan07 Oct 24, 2020
8b8c931
[#10645] [#10688] Fix bugs in instructor results page (#10800)
jtankw3 Oct 25, 2020
573c7c1
[#9536] Remove all code related to legacy UI tests (#10810)
wkurniawan07 Oct 25, 2020
3e0722a
[#10811] Update developers.json (#10816)
madanalogy Oct 25, 2020
b6430c5
test removing student key
jtankw3 Oct 25, 2020
9e5bc34
Reload page if stuck loading
jtankw3 Oct 26, 2020
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
  •  
  •  
  •  
1 change: 0 additions & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,3 @@
src/e2e/resources/data/* linguist-vendored
src/test/resources/data/* linguist-vendored
src/test/resources/emails/* linguist-vendored
src/test/resources/pages/* linguist-vendored
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug-report.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ about: Report a bug or defect in the application

<!-- Issue title: [brief description of bug] -->

- **Environment**: <!-- The environment in which you encountered the bug, e.g. live server at `V6.0.0`, `master` branch at commit 1234567. -->
- **Environment**: <!-- The environment in which you encountered the bug, e.g. live server at `V7.0.0`, `master` branch at commit 1234567. -->

**Steps to reproduce**

Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature-request.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ about: Request a new or a change to existing user-facing feature

<!-- Issue title: [brief description of feature/enhancement] -->

- **Environment**: <!-- The environment in which the said feature/enhancement is absent, e.g. live server at `V6.0.0`, `master` branch at commit 1234567. -->
- **Environment**: <!-- The environment in which the said feature/enhancement is absent, e.g. live server at `V7.0.0`, `master` branch at commit 1234567. -->

**Description of feature/enhancement**

Expand Down
4 changes: 2 additions & 2 deletions .github/SUPPORT.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
If you are looking for support for TEAMMATES, check out:

* User Documentation
* [For students](http://teammatesv4.appspot.com/studentHelp.jsp)
* [For instructors](http://teammatesv4.appspot.com/instructorHelp.jsp)
* [For students](https://teammatesv4.appspot.com/web/front/help/student)
* [For instructors](https://teammatesv4.appspot.com/web/front/help/instructor)
* [Developer Documentation](../docs/README.md)
* [FAQs by external contributors](https://github.com/TEAMMATES/teammates/issues?utf8=✓&q=is:issue+label:a-DevHelp). Note that many of the questions asked and/or answers provided may have been outdated now.

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -57,5 +57,6 @@ src/main/webapp/*
src/client/java/teammates/client/scripts/statistics/data/
src/client/java/teammates/client/scripts/log/
src/e2e/resources/gmail-api/
src/e2e/resources/downloads/

!.gitkeep
4 changes: 2 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ jobs:
- mv src/e2e/resources/test.travis.properties src/e2e/resources/test.properties
- ./gradlew createConfigs testClasses generateTypes
- npm ci
- npm run build -- --progress=false
- npm run build -- --progress=false --serviceWorker=false
- ./gradlew appengineStart
script:
- ./gradlew e2eTests
Expand All @@ -95,7 +95,7 @@ jobs:
- mv src/e2e/resources/test.travis-chrome.properties src/e2e/resources/test.properties
- ./gradlew createConfigs testClasses generateTypes
- npm ci
- npm run build -- --progress=false
- npm run build -- --progress=false --serviceWorker=false
- ./gradlew appengineStart
script:
- ./gradlew e2eTests
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# TEAMMATES Developer Web Site

[![Travis Build Status](https://travis-ci.org/TEAMMATES/teammates.svg?branch=master)](https://travis-ci.org/TEAMMATES/teammates)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/dvr6t33lqg6hsmxw/branch/master?svg=true)](https://ci.appveyor.com/project/damithc/teammates/branch/master)
[![AppVeyor Build Status](https://ci.appveyor.com/api/projects/status/dvr6t33lqg6hsmxw/branch/master?svg=true)](https://ci.appveyor.com/project/nus-oss/teammates/branch/master)
[![Codecov Coverage Status](https://codecov.io/gh/TEAMMATES/teammates/branch/master/graph/badge.svg)](https://codecov.io/gh/TEAMMATES/teammates)
[![License](https://img.shields.io/badge/license-GPLv2-blue.svg)](LICENSE)

Expand Down
54 changes: 3 additions & 51 deletions angular.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,50 +22,12 @@
"main": "src/web/main.ts",
"polyfills": "src/web/polyfills.ts",
"tsConfig": "tsconfig.app.json",
"aot": false,
"aot": true,
"assets": [
"src/web/assets/",
{
"glob": "**/*",
"input": "node_modules/tinymce/skins",
"output": "tinymce/skins"
},
{
"glob": "**/*",
"input": "node_modules/tinymce/plugins/emoticons/js",
"output": "plugins/emoticons/js"
}
"src/web/assets/"
],
"styles": [
"src/web/styles.scss"
],
"scripts": [
"node_modules/tinymce/tinymce.min.js",
"node_modules/tinymce/themes/silver/theme.js",
"src/web/tinymce/placeholder-plugin.js",
"node_modules/tinymce/plugins/advlist/plugin.js",
"node_modules/tinymce/plugins/autolink/plugin.js",
"node_modules/tinymce/plugins/lists/plugin.js",
"node_modules/tinymce/plugins/link/plugin.js",
"node_modules/tinymce/plugins/image/plugin.js",
"node_modules/tinymce/plugins/charmap/plugin.js",
"node_modules/tinymce/plugins/print/plugin.js",
"node_modules/tinymce/plugins/hr/plugin.js",
"node_modules/tinymce/plugins/anchor/plugin.js",
"node_modules/tinymce/plugins/searchreplace/plugin.js",
"node_modules/tinymce/plugins/wordcount/plugin.js",
"node_modules/tinymce/plugins/visualblocks/plugin.js",
"node_modules/tinymce/plugins/visualchars/plugin.js",
"node_modules/tinymce/plugins/code/plugin.js",
"node_modules/tinymce/plugins/fullscreen/plugin.js",
"node_modules/tinymce/plugins/insertdatetime/plugin.js",
"node_modules/tinymce/plugins/nonbreaking/plugin.js",
"node_modules/tinymce/plugins/save/plugin.js",
"node_modules/tinymce/plugins/table/plugin.js",
"node_modules/tinymce/plugins/directionality/plugin.js",
"node_modules/tinymce/plugins/emoticons/plugin.js",
"node_modules/tinymce/plugins/paste/plugin.js",
"node_modules/tinymce/plugins/textpattern/plugin.js"
]
},
"configurations": {
Expand All @@ -78,20 +40,10 @@
],
"index": {
"input": "src/web/index.prod.html",
"output": "index.html",
"output": "index.html"
},
"assets": [
"src/web/assets/",
{
"glob": "**/*",
"input": "node_modules/tinymce/skins",
"output": "tinymce/skins"
},
{
"glob": "**/*",
"input": "node_modules/tinymce/plugins/emoticons/js",
"output": "plugins/emoticons/js"
},
"src/web/BingSiteAuth.xml",
"src/web/google8c7ef1e995031e09.html",
"src/web/pulse.html",
Expand Down
95 changes: 25 additions & 70 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ apply plugin: "com.github.spotbugs"
apply plugin: "jacoco"
apply plugin: "cz.habarta.typescript-generator"

def appengineVersion = "1.9.+"
def appengineVersion = "1.9.81"
def checkstyleVersion = "8.33"
def pmdVersion = "6.24.0"
def spotbugsVersion = "4.0.6"
Expand Down Expand Up @@ -151,29 +151,30 @@ tasks.withType(cz.habarta.typescript.generator.gradle.GenerateTask) {

task generateApiOutputFormat(type: cz.habarta.typescript.generator.gradle.GenerateTask) {
classPatterns = [
"teammates.ui.webapi.output.**",
"teammates.ui.output.**",
"teammates.common.datatransfer.questions.**"
]
removeTypeNameSuffix = "Data"
outputFile = "src/web/types/api-output.ts"
excludeClassPatterns = [
"teammates.ui.webapi.output.**Builder"
"teammates.ui.output.**Builder"
]
excludeClasses = [
"teammates.ui.webapi.output.SessionResultsData\$NameInfo"
"teammates.ui.output.SessionResultsData\$NameInfo"
]
}

task generateApiRequestFormat(type: cz.habarta.typescript.generator.gradle.GenerateTask) {
classPatterns = [
"teammates.ui.webapi.request.**"
"teammates.ui.request.**",
"teammates.common.util.EmailType"
]
outputFile = "src/web/types/api-request.ts"
}

task generateApiEndpoints(type: cz.habarta.typescript.generator.gradle.GenerateTask) {
classPatterns = [
"teammates.ui.webapi.endpoints.**"
"teammates.ui.endpoints.**"
]
jsonLibrary = 'jackson2'
jackson2Configuration = [
Expand Down Expand Up @@ -372,6 +373,9 @@ def checkTestNgFailureClosure = { descriptor, result ->
}
}

def isTravis = System.getenv("TRAVIS") != null
def isAppVeyor = System.getenv("APPVEYOR") != null

// Displays full exception; to be run after the test fails after the last retry
def afterTestClosure = { descriptor, result ->
if (result.resultType == TestResult.ResultType.FAILURE && result.exception != null && result.exception.getMessage() != null) {
Expand Down Expand Up @@ -435,24 +439,7 @@ task lint {

// TEST TASKS

def numOfTestRetries = 3
def isTravis = System.getenv("TRAVIS") != null
def isAppVeyor = System.getenv("APPVEYOR") != null

test {
useTestNG()
options.useDefaultListeners = true
ignoreFailures false
maxHeapSize = "1g"
reports.html.enabled = false
reports.junitXml.enabled = false
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8"
afterTest afterTestClosure
afterSuite checkTestNgFailureClosure
testLogging {
events "passed"
}
}
def numOfTestRetries = 4

task lnpTests(type: Test) {
systemProperty "random.testing.seed", new Random().nextInt() // re-run tests even if they are up-to-date
Expand Down Expand Up @@ -484,28 +471,28 @@ task lnpTests(type: Test) {
}
}

task failedTests(type: Test) {
task componentTests(type: Test) {
description "Runs the full unit and integration test suite."
group "Test"
useTestNG()
options.suites "test-output/testng-failed.xml"
options.outputDirectory = file("build/reports/test-failed")
options.suites "src/test/resources/testng-component.xml"
options.useDefaultListeners = true
ignoreFailures false
maxHeapSize = "1g"
reports.html.enabled = false
reports.junitXml.enabled = false
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8"
if (isTravis) {
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8", "-Djava.io.tmpdir=" + System.getenv("TRAVIS_BUILD_DIR")
} else {
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8"
}
afterTest afterTestClosure
afterSuite checkTestNgFailureClosure
testLogging {
events "passed"
}
}

task componentTests {
description "Runs the full unit test suite and retries failed test up to ${numOfTestRetries} times."
group "Test"
}

task e2eTests {
description "Runs the full E2E test suite and retries failed test up to ${numOfTestRetries} times."
group "Test"
Expand All @@ -514,33 +501,6 @@ task e2eTests {
(1..numOfTestRetries + 1).each { id ->
def isFirstTry = id == 1
def isLastRetry = id == numOfTestRetries + 1
task "componentTestTry${id}"(type: Test) {
useTestNG()
options.suites isFirstTry ? "src/test/resources/testng-component.xml" : file("${buildDir}/reports/component-test-try-${id - 1}/testng-failed.xml")
options.outputDirectory = file("${buildDir}/reports/component-test-try-${id}")
options.useDefaultListeners = true
ignoreFailures = !isLastRetry
maxHeapSize = "1g"
reports.html.enabled = false
reports.junitXml.enabled = false
if (isTravis) {
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8", "-Djava.io.tmpdir=" + System.getenv("TRAVIS_BUILD_DIR")
} else {
jvmArgs "-Xss2m", "-Dfile.encoding=UTF-8"
}
testLogging {
events "passed"
}
if (isLastRetry) {
afterTest afterTestClosure
} else if (isFirstTry) {
afterSuite checkTestNgFailureClosure
}
onlyIf {
isFirstTry || file("${buildDir}/reports/component-test-try-${id - 1}/testng-failed.xml").exists()
}
}
componentTests.dependsOn "componentTestTry${id}"

task "e2eTestTry${id}"(type: Test) {
useTestNG()
Expand All @@ -559,9 +519,8 @@ task e2eTests {
testLogging {
events "passed"
}
if (isLastRetry) {
afterTest afterTestClosure
} else if (isFirstTry) {
afterTest afterTestClosure
if (isFirstTry) {
afterSuite checkTestNgFailureClosure
}
finalizedBy "killFirefox${id}", "killChromedriver${id}"
Expand All @@ -575,8 +534,10 @@ task e2eTests {
doFirst {
if (isWindows) {
commandLine "taskkill", "/f", "/im", "firefox.exe"
commandLine "taskkill", "/f", "/im", "geckodriver.exe"
} else {
commandLine "pkill", "firefox"
commandLine "pkill", "geckodriver"
}
// Silence output for this task
standardOutput = new ByteArrayOutputStream()
Expand Down Expand Up @@ -608,17 +569,12 @@ jacoco {
toolVersion = jacocoVersion
}

task jacocoMerge(type: JacocoMerge) {
destinationFile = file("${buildDir}/jacocoMerge/jacocoMerge.exec")
executionData fileTree("${buildDir}/jacoco").files
}

task jacocoReport(type: JacocoReport) {
description "Runs coverage session from available test run data."
group "Test"
sourceDirectories.from files(sourceSets.main.java.srcDirs)
classDirectories.from files(sourceSets.main.output)
executionData jacocoMerge.destinationFile
executionData fileTree("${buildDir}/jacoco").files
reports {
xml.enabled true
html.enabled true
Expand All @@ -628,7 +584,6 @@ task jacocoReport(type: JacocoReport) {
fileTree(dir: it, exclude: ["**/*.jar"])
})
}
dependsOn jacocoMerge
}

// Helper methods
Expand Down
14 changes: 7 additions & 7 deletions docs/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

Thanks for taking your time to contribute to TEAMMATES!

We welcome contributions from anyone, in particular, students (see [here](https://teammatesv4.appspot.com/about.jsp) for the list of our contributors). One of the main objectives of TEAMMATES is to help students get experience in a OSS production environment. Here are some information that might be useful to would-be contributors.
We welcome contributions from anyone, in particular, students (see [here](https://teammatesv4.appspot.com/web/front/about) for the list of our contributors). One of the main objectives of TEAMMATES is to help students get experience in an OSS production environment. Here are some information that might be useful to would-be contributors.

* [Getting started](#getting-started)
* [Know the product/project](#know-the-productproject)
Expand All @@ -23,7 +23,7 @@ We welcome contributions from anyone, in particular, students (see [here](https:
Understand what TEAMMATES is about, both as a product (users' point of view) and a project (developers' point of view).

* [Product intro page](https://teammatesv4.appspot.com) shown to potential users
* [Features overview](https://teammatesv4.appspot.com/features.jsp)
* [Features overview](https://teammatesv4.appspot.com/web/front/features)
* [Project vision, challenges, and principles](overview.md)

### Code of Conduct
Expand All @@ -43,7 +43,7 @@ If you are certain that you are reporting a new issue, [open a new issue](https:

We welcome anyone manually testing our product and reporting bugs or suggestions for enhancements in the issue tracker.

If you want to undertake such a role without actually contributing code, [get an instructor account from TEAMMATES](https://teammatesv4.appspot.com/request.jsp).
If you want to undertake such a role without actually contributing code, [get an instructor account from TEAMMATES](https://teammatesv4.appspot.com/web/front/request).
Remember to mention the purpose of your request under "Any other comments/queries".

### Submitting a pull request
Expand Down Expand Up @@ -86,7 +86,8 @@ Roles:

1. [Set up TEAMMATES development environment on your computer.](setting-up.md)<br>
**Important: Follow instructions to the letter. Install the specified versions of the tool stack, not the latest versions.**
1. Get *dev green* (more info in [_Development Guidelines_ document](development.md)).
1. Get all component tests to pass (more info in [_Development Guidelines_ document](development.md)).
1. (Optional) Get all E2E tests to pass.
It is OK to proceed to the next phase if you have fewer than 5 failing test cases.

#### Phase B: Learn
Expand All @@ -96,11 +97,10 @@ Try your best to be familiar with at least building and testing the application

#### Phase C: Start contributing

When you are ready for a real contribution, you are advised to start with an issue labelled [d.FirstTimers](https://github.com/TEAMMATES/teammates/issues?q=is:issue+is:open+label:d.FirstTimers) (but do not do more than one of those), then move on to other issues labelled [d.Contributors](https://github.com/TEAMMATES/teammates/issues?q=is:issue+is:open+label:d.Contributors).
When you are ready for a real contribution, you are advised to start with an issue labelled [good first issue](https://github.com/TEAMMATES/teammates/issues?q=is:issue+is:open+label:"good+first+issue") (but do not do more than one of those), then move on to other issues labelled [help wanted](https://github.com/TEAMMATES/teammates/issues?q=is:issue+is:open+label:"help+wanted").
Steps for fixing an issue are lined out in the [process document](process.md).

> In the event that you cannot find a `d.FirstTimers`-labelled issue, you can start with a `d.Contributors`-labelled issue.
> You can consult the `e.*` label, if it is present, to estimate the difficulty. Lower number generally means less amount of work required.
> In the event that you cannot find a `good first issue`-labelled issue, you can start with a `help wanted`-labelled issue.

#### Important

Expand Down
Loading