summaryrefslogtreecommitdiff
path: root/spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js
diff options
context:
space:
mode:
Diffstat (limited to 'spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js')
-rw-r--r--spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js46
1 files changed, 46 insertions, 0 deletions
diff --git a/spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js b/spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js
new file mode 100644
index 00000000000..1e0bc708c31
--- /dev/null
+++ b/spec/frontend/pages/admin/abuse_reports/abuse_reports_spec.js
@@ -0,0 +1,46 @@
+import $ from 'jquery';
+import '~/lib/utils/text_utility';
+import AbuseReports from '~/pages/admin/abuse_reports/abuse_reports';
+
+describe('Abuse Reports', () => {
+ const FIXTURE = 'abuse_reports/abuse_reports_list.html';
+ const MAX_MESSAGE_LENGTH = 500;
+
+ let $messages;
+
+ const assertMaxLength = $message => {
+ expect($message.text().length).toEqual(MAX_MESSAGE_LENGTH);
+ };
+ const findMessage = searchText =>
+ $messages.filter((index, element) => element.innerText.indexOf(searchText) > -1).first();
+
+ preloadFixtures(FIXTURE);
+
+ beforeEach(() => {
+ loadFixtures(FIXTURE);
+ new AbuseReports(); // eslint-disable-line no-new
+ $messages = $('.abuse-reports .message');
+ });
+
+ it('should truncate long messages', () => {
+ const $longMessage = findMessage('LONG MESSAGE');
+
+ expect($longMessage.data('originalMessage')).toEqual(jasmine.anything());
+ assertMaxLength($longMessage);
+ });
+
+ it('should not truncate short messages', () => {
+ const $shortMessage = findMessage('SHORT MESSAGE');
+
+ expect($shortMessage.data('originalMessage')).not.toEqual(jasmine.anything());
+ });
+
+ it('should allow clicking a truncated message to expand and collapse the full message', () => {
+ const $longMessage = findMessage('LONG MESSAGE');
+ $longMessage.click();
+
+ expect($longMessage.data('originalMessage').length).toEqual($longMessage.text().length);
+ $longMessage.click();
+ assertMaxLength($longMessage);
+ });
+});