Skip to content

Commit

Permalink
Feature/rxjs6 lint (#335)
Browse files Browse the repository at this point in the history
* Add tslint for rxjs 6

* Fix lint issues

* Stricter rxjs tslint
  • Loading branch information
garyluu authored Jul 12, 2018
1 parent b0652de commit 2113e0b
Show file tree
Hide file tree
Showing 7 changed files with 125 additions and 8 deletions.
104 changes: 104 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,8 @@
"karma-jasmine-html-reporter": "^0.2.2",
"karma-spec-reporter": "0.0.32",
"protractor": "~5.3.0",
"rxjs-tslint": "^0.1.5",
"rxjs-tslint-rules": "^4.5.1",
"tslint": "~5.9.1"
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Component, OnInit } from '@angular/core';
import { AuthService } from 'ng2-ui-auth';
import { Observable } from 'rxjs/Observable';
import { Observable } from 'rxjs';

import { Configuration, Profile, User } from '../../../shared/swagger';
import { TokenService } from '../../token.service';
Expand Down
2 changes: 1 addition & 1 deletion src/app/workflow/dag/cwl-viewer/cwl-viewer.component.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ import { Component, Input, OnDestroy, OnInit } from '@angular/core';
import { CwlViewerDescriptor, CwlViewerService } from './cwl-viewer.service';
import { WorkflowVersion } from '../../../shared/swagger/model/workflowVersion';
import { ExtendedWorkflow } from '../../../shared/models/ExtendedWorkflow';
import { Subject } from 'rxjs/Subject';
import { Subject } from 'rxjs';

@Component({
selector: 'app-cwl-viewer',
Expand Down
2 changes: 1 addition & 1 deletion src/app/workflow/dag/cwl-viewer/cwl-viewer.service.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { fakeAsync, TestBed, tick } from '@angular/core/testing';
import { CwlViewerService } from './cwl-viewer.service';
import { HttpClientTestingModule, HttpTestingController } from '@angular/common/http/testing';
import { Dockstore } from '../../../shared/dockstore.model';
import { Subject } from 'rxjs/Subject';
import { Subject } from 'rxjs';

describe('Service: CWLViewer', () => {

Expand Down
8 changes: 4 additions & 4 deletions src/app/workflow/dag/cwl-viewer/cwl-viewer.service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/
import { HttpClient, HttpResponse } from '@angular/common/http';
import { Injectable } from '@angular/core';
import { Observable, of as observableOf, Subject } from 'rxjs';
import { Observable, of as observableOf, Subject, interval } from 'rxjs';
import { filter, map, switchMap, take, takeUntil } from 'rxjs/operators';

import { Dockstore } from '../../../shared/dockstore.model';
Expand Down Expand Up @@ -110,10 +110,9 @@ export class CwlViewerService {
private pollJobQueue(queueUrl: string, onDestroy$: Subject<void>): Observable<CwlViewerDescriptor> {
const pollFrequencyMs = 500;
const maxPolls = 30000 / pollFrequencyMs; // Poll for a maximum of 30 seconds
return Observable.interval(pollFrequencyMs)
return interval(pollFrequencyMs)
.pipe(
switchMap(() => this.httpClient.get(queueUrl, {observe: 'response'})),
takeUntil(onDestroy$),
take(maxPolls),
// When the job is complete, polling the job sends a 302 which Angular Http client follows, giving the job output
filter((p: HttpResponse<any>) => p.body && (p.body.visualisationSvg
Expand All @@ -128,6 +127,7 @@ export class CwlViewerService {
webPageUrl: resp.url
}
);
}));
}),
takeUntil(onDestroy$));
}
}
13 changes: 12 additions & 1 deletion tslint.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,21 @@
{
"extends": [
"rxjs-tslint-rules"
],
"rulesDirectory": [
"node_modules/codelyzer"
"node_modules/codelyzer",
"node_modules/rxjs-tslint"
],
"rules": {
"arrow-return-shorthand": true,
"callable-types": true,
"class-name": true,
"rxjs-add": { "severity": "error" },
"rxjs-no-unused-add": { "severity": "error" },
"rxjs-proper-imports": true,
"rxjs-no-static-observable-methods": true,
"rxjs-pipeable-operators-only": true,
"rxjs-collapse-imports": true,
"comment-format": [
true,
"check-space"
Expand All @@ -15,6 +25,7 @@
"severity": "warn"
},
"eofline": true,
"rxjs-no-unsafe-takeuntil": true,
"forin": true,
"import-blacklist": [
true,
Expand Down

0 comments on commit 2113e0b

Please sign in to comment.