Skip to content

Commit

Permalink
Bug 1472717 - Fix clear selected job when clicking away (#3753)
Browse files Browse the repository at this point in the history
  • Loading branch information
Cameron Dawson committed Jul 3, 2018
1 parent b336528 commit 1bf2e61
Show file tree
Hide file tree
Showing 7 changed files with 17 additions and 18 deletions.
10 changes: 4 additions & 6 deletions tests/ui/unit/react/revisions.tests.jsx
Expand Up @@ -161,11 +161,9 @@ describe('Revision item component', () => {
revision={mockData.revision}
linkifyBugsFilter={linkifyBugsFilter}
/>);
const escapedComment = _.escape(mockData.revision.comments.split('\n')[0]);
const linkifiedCommentText = linkifyBugsFilter(escapedComment);

const comment = wrapper.find('.revision-comment em');
expect(comment.html()).toEqual(`<em>${linkifiedCommentText}</em>`);
expect(comment.html()).toEqual('<em data-job-clear-on-click="true">Bug <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1319926" data-bugid="1319926" title="bugzilla.mozilla.org">1319926</a> - Part 2: Collect telemetry about deprecated String generics methods. r=jandem</em>');
});

it('marks the revision as backed out if the words "Back/Backed out" appear in the comments', () => {
Expand Down Expand Up @@ -209,7 +207,7 @@ describe('initials filter', function () {
const initials = mount(<Initials title={`${name}: ${email}`}
author={name}
/>);
expect(initials.html()).toEqual('<span title="Starscream: foo@bar.baz"><span class="user-push-icon"><i class="fa fa-user-o" aria-hidden="true"></i></span><div class="icon-superscript user-push-initials">S</div></span>');
expect(initials.html()).toEqual('<span title="Starscream: foo@bar.baz"><span class="user-push-icon"><i class="fa fa-user-o" aria-hidden="true" data-job-clear-on-click="true"></i></span><div class="icon-superscript user-push-initials" data-job-clear-on-click="true">S</div></span>');
});

it('initializes a two-word name', function () {
Expand All @@ -218,7 +216,7 @@ describe('initials filter', function () {
author={name}
/>);
const userPushInitials = initials.find('.user-push-initials');
expect(userPushInitials.html()).toEqual('<div class="icon-superscript user-push-initials">OP</div>');
expect(userPushInitials.html()).toEqual('<div class="icon-superscript user-push-initials" data-job-clear-on-click="true">OP</div>');
});

it('initializes a three-word name', function () {
Expand All @@ -227,7 +225,7 @@ describe('initials filter', function () {
author={name}
/>);
const userPushInitials = initials.find('.user-push-initials');
expect(userPushInitials.html()).toEqual('<div class="icon-superscript user-push-initials">ST</div>');
expect(userPushInitials.html()).toEqual('<div class="icon-superscript user-push-initials" data-job-clear-on-click="true">ST</div>');
});
});

2 changes: 1 addition & 1 deletion ui/job-view/JobsAndGroups.jsx
Expand Up @@ -9,7 +9,7 @@ export default class JobsAndGroups extends React.Component {
const { $injector, groups, repoName, platform, filterPlatformCb } = this.props;

return (
<td className="job-row">
<td className="job-row" data-job-clear-on-click>
{groups.map((group) => {
if (group.tier !== 1 || group.symbol !== '?') {
return (
Expand Down
6 changes: 3 additions & 3 deletions ui/job-view/Platform.jsx
Expand Up @@ -5,8 +5,8 @@ import JobsAndGroups from './JobsAndGroups';
function PlatformName(props) {
const titleText = props.title;
return (
<td className="platform">
<span title={titleText}>{titleText}</span>
<td className="platform" data-job-clear-on-click>
<span title={titleText} data-job-clear-on-click>{titleText}</span>
</td>
);
}
Expand All @@ -20,7 +20,7 @@ export default function Platform(props) {
const { title, groups, id } = platform;

return (
<tr id={id} key={id}>
<tr id={id} key={id} data-job-clear-on-click>
<PlatformName title={title} />
<JobsAndGroups
groups={groups}
Expand Down
2 changes: 1 addition & 1 deletion ui/job-view/Push.jsx
Expand Up @@ -124,7 +124,7 @@ export default class Push extends React.Component {
const { id, push_timestamp, revision, job_counts, author } = push;

return (
<div className="push" ref={(ref) => { this.container = ref; }}>
<div className="push" ref={(ref) => { this.container = ref; }} data-job-clear-on-click>
<PushHeader
pushId={id}
pushTimestamp={push_timestamp}
Expand Down
5 changes: 3 additions & 2 deletions ui/job-view/PushHeader.jsx
Expand Up @@ -37,6 +37,7 @@ function PushCounts(props) {
{percentComplete < 100 && total > 0 &&
<span
title="Proportion of jobs that are complete"
data-job-clear-on-click
>{percentComplete}% - {inProgress} in progress</span>
}
</span>
Expand Down Expand Up @@ -178,8 +179,8 @@ export default class PushHeader extends React.PureComponent {

return (
<div className="push-header">
<div className="push-bar" key="push-header">
<span className="push-left">
<div className="push-bar" data-job-clear-on-click>
<span className="push-left" data-job-clear-on-click>
<span className="push-title-left">
<span>
<a
Expand Down
2 changes: 1 addition & 1 deletion ui/job-view/PushJobs.jsx
Expand Up @@ -214,7 +214,7 @@ export default class PushJobs extends React.Component {
const { $injector, repoName } = this.props;

return (
<table id={this.aggregateId} className="table-hover">
<table id={this.aggregateId} className="table-hover" data-job-clear-on-click>
<tbody onMouseDown={this.onMouseDown}>
{platforms ? Object.keys(platforms).map(id => (
platforms[id].visible &&
Expand Down
8 changes: 4 additions & 4 deletions ui/job-view/Revision.jsx
Expand Up @@ -21,9 +21,9 @@ export function Initials(props) {
return (
<span title={props.title}>
<span className="user-push-icon">
<i className="fa fa-user-o" aria-hidden="true" />
<i className="fa fa-user-o" aria-hidden="true" data-job-clear-on-click />
</span>
<div className="icon-superscript user-push-initials">{initials}</div>
<div className="icon-superscript user-push-initials" data-job-clear-on-click>{initials}</div>
</span>
);
}
Expand Down Expand Up @@ -51,7 +51,7 @@ export class Revision extends React.PureComponent {

return (<li className="clearfix">
<span className="revision" data-tags={this.tags}>
<span className="revision-holder">
<span className="revision-holder" data-job-clear-on-click>
<a
title={`Open revision ${commitRevision} on ${repo.url}`}
href={repo.getRevisionHref(commitRevision)}
Expand All @@ -64,7 +64,7 @@ export class Revision extends React.PureComponent {
/>
<span title={this.comment}>
<span className="revision-comment">
<em dangerouslySetInnerHTML={this.escapedCommentHTML} />
<em dangerouslySetInnerHTML={this.escapedCommentHTML} data-job-clear-on-click />
</span>
</span>
</span>
Expand Down

0 comments on commit 1bf2e61

Please sign in to comment.