Skip to content

Commit 31dfc73

Browse files
authored
Merge pull request #2346 from kwonoj/chore-enable-type-test
test(all): enable type inference to marble diagram
2 parents 6ce4773 + 01a2d15 commit 31dfc73

File tree

122 files changed

+992
-336
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

122 files changed

+992
-336
lines changed

spec/Observable-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,13 @@ import {expect} from 'chai';
22
import * as sinon from 'sinon';
33
import * as Rx from '../dist/cjs/Rx';
44
import {TeardownLogic} from '../dist/cjs/Subscription';
5+
import marbleTestingSignature = require('./helpers/marble-testing'); // tslint:disable-line:no-require-imports
6+
7+
declare const { asDiagram, rxTestScheduler };
8+
declare const cold: typeof marbleTestingSignature.cold;
9+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
10+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
511

6-
declare const {asDiagram, expectObservable, rxTestScheduler};
712
const Subscriber = Rx.Subscriber;
813
const Observable = Rx.Observable;
914

spec/Subject-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
import {expect} from 'chai';
22
import * as Rx from '../dist/cjs/Rx';
3+
import marbleTestingSignature = require('./helpers/marble-testing'); // tslint:disable-line:no-require-imports
34

4-
declare const {hot, expectObservable};
5+
declare const { time };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
58

69
const Subject = Rx.Subject;
710
const Observable = Rx.Observable;

spec/observables/SubscribeOnObservable-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@ import {expect} from 'chai';
22
import * as sinon from 'sinon';
33
import * as Rx from '../../dist/cjs/Rx';
44
import {SubscribeOnObservable} from '../../dist/cjs/observable/SubscribeOnObservable';
5+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
56

6-
declare const {hot, expectObservable, expectSubscriptions};
7+
declare const hot: typeof marbleTestingSignature.hot;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
710
declare const rxTestScheduler: Rx.TestScheduler;
811

912
describe('SubscribeOnObservable', () => {

spec/observables/combineLatest-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, expectObservable, expectSubscriptions, type};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { type };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612
const queueScheduler = Rx.Scheduler.queue;

spec/observables/concat-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const hot: typeof marbleTestingSignature.hot;
6+
declare const cold: typeof marbleTestingSignature.cold;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
8+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
49

510
const Observable = Rx.Observable;
611
const queueScheduler = Rx.Scheduler.queue;

spec/observables/defer-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612

spec/observables/empty-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const { asDiagram };
5+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
36

47
const Observable = Rx.Observable;
58

spec/observables/fromEvent-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
34

5+
declare const { asDiagram };
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
47
declare const rxTestScheduler: Rx.TestScheduler;
5-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
8+
69
const Observable = Rx.Observable;
710

811
/** @test {fromEvent} */

spec/observables/fromEventPattern-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@ import {expect} from 'chai';
22
import * as sinon from 'sinon';
33
import * as Rx from '../../dist/cjs/Rx';
44
import {noop} from '../../dist/cjs/util/noop';
5+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
6+
7+
declare const { asDiagram };
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
59

610
declare const rxTestScheduler: Rx.TestScheduler;
7-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
811
const Observable = Rx.Observable;
912

1013
/** @test {fromEventPattern} */

spec/observables/if-spec.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
36

47
const Observable = Rx.Observable;
58

spec/observables/interval-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,11 @@
11
import {expect} from 'chai';
22
import * as sinon from 'sinon';
33
import * as Rx from '../../dist/cjs/Rx';
4+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
5+
6+
declare const { asDiagram };
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
48

5-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
69
declare const rxTestScheduler: Rx.TestScheduler;
710
const Observable = Rx.Observable;
811
const asap = Rx.Scheduler.asap;

spec/observables/merge-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const hot: typeof marbleTestingSignature.hot;
6+
declare const cold: typeof marbleTestingSignature.cold;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
8+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
49

510
declare const rxTestScheduler: Rx.TestScheduler;
611
const Observable = Rx.Observable;

spec/observables/never-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const { asDiagram };
5+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
36

47
const Observable = Rx.Observable;
58

spec/observables/of-spec.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,10 @@ import * as Rx from '../../dist/cjs/Rx';
33
import {ArrayObservable} from '../../dist/cjs/observable/ArrayObservable';
44
import {ScalarObservable} from '../../dist/cjs/observable/ScalarObservable';
55
import {EmptyObservable} from '../../dist/cjs/observable/EmptyObservable';
6+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
67

7-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
8+
declare const { asDiagram };
9+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
810
declare const rxTestScheduler: Rx.TestScheduler;
911
const Observable = Rx.Observable;
1012

spec/observables/onErrorResumeNext-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const hot: typeof marbleTestingSignature.hot;
5+
declare const cold: typeof marbleTestingSignature.cold;
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
7+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
38

49
const Observable = Rx.Observable;
510

spec/observables/pairs-spec.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
34

4-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
5+
declare const { asDiagram };
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
57
declare const rxTestScheduler: Rx.TestScheduler;
68
const Observable = Rx.Observable;
79

spec/observables/race-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, cold, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const hot: typeof marbleTestingSignature.hot;
5+
declare const cold: typeof marbleTestingSignature.cold;
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
7+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
38

49
const Observable = Rx.Observable;
510

spec/observables/range-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,10 @@ import {expect} from 'chai';
22
import * as sinon from 'sinon';
33
import * as Rx from '../../dist/cjs/Rx';
44
import {RangeObservable} from '../../dist/cjs/observable/RangeObservable';
5-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
5+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
6+
7+
declare const { asDiagram };
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
69

710
declare const rxTestScheduler: Rx.TestScheduler;
811
const Observable = Rx.Observable;

spec/observables/throw-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,10 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
43
import {ErrorObservable} from '../../dist/cjs/observable/ErrorObservable';
4+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
5+
6+
declare const { asDiagram };
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
58
declare const rxTestScheduler: Rx.TestScheduler;
69
const Observable = Rx.Observable;
710

spec/observables/timer-spec.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
import * as Rx from '../../dist/cjs/Rx';
22

3-
declare const {hot, asDiagram, time, expectObservable};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram, time };
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
47
declare const rxTestScheduler: Rx.TestScheduler;
58

69
const Observable = Rx.Observable;

spec/observables/zip-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, expectObservable, expectSubscriptions, type};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { type };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
declare const Symbol: any;
612

spec/operators/audit-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612

spec/operators/auditTime-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
declare const rxTestScheduler: Rx.TestScheduler;
612
const Observable = Rx.Observable;

spec/operators/buffer-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const { asDiagram };
5+
declare const hot: typeof marbleTestingSignature.hot;
6+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
7+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
38

49
const Observable = Rx.Observable;
510

spec/operators/bufferCount-spec.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
import * as Rx from '../../dist/cjs/Rx';
22
import { expect } from 'chai';
3-
declare const {hot, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
8+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
49

510
const Observable = Rx.Observable;
611

spec/operators/bufferTime-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, cold, asDiagram, time, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const { asDiagram, time };
5+
declare const hot: typeof marbleTestingSignature.hot;
6+
declare const cold: typeof marbleTestingSignature.cold;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
8+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
39

410
declare const rxTestScheduler: Rx.TestScheduler;
511
const Observable = Rx.Observable;

spec/operators/bufferToggle-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612

spec/operators/bufferWhen-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612

spec/operators/catch-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,13 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
33
import {createObservableInputs} from '../helpers/test-helper';
4-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
4+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
5+
6+
declare const { asDiagram };
7+
declare const hot: typeof marbleTestingSignature.hot;
8+
declare const cold: typeof marbleTestingSignature.cold;
9+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
10+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
511

612
declare const rxTestSchdeuler: Rx.TestScheduler;
713
const Observable = Rx.Observable;

spec/operators/combineAll-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,12 @@
11
import {expect} from 'chai';
22
import * as Rx from '../../dist/cjs/Rx';
3-
declare const {hot, cold, asDiagram, expectObservable, expectSubscriptions};
3+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
4+
5+
declare const { asDiagram };
6+
declare const hot: typeof marbleTestingSignature.hot;
7+
declare const cold: typeof marbleTestingSignature.cold;
8+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
9+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
410

511
const Observable = Rx.Observable;
612
const queueScheduler = Rx.Scheduler.queue;

spec/operators/combineLatest-spec.ts

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
import * as Rx from '../../dist/cjs/Rx';
2-
declare const {hot, asDiagram, cold, expectObservable, expectSubscriptions};
2+
import marbleTestingSignature = require('../helpers/marble-testing'); // tslint:disable-line:no-require-imports
3+
4+
declare const { asDiagram };
5+
declare const hot: typeof marbleTestingSignature.hot;
6+
declare const cold: typeof marbleTestingSignature.cold;
7+
declare const expectObservable: typeof marbleTestingSignature.expectObservable;
8+
declare const expectSubscriptions: typeof marbleTestingSignature.expectSubscriptions;
39

410
const Observable = Rx.Observable;
511

0 commit comments

Comments
 (0)