Skip to content

Commit

Permalink
fix(marble): initial hyphens for tomarble were missing
Browse files Browse the repository at this point in the history
  • Loading branch information
tusharmath committed Nov 2, 2016
1 parent c3ff083 commit 153c1f1
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 7 deletions.
13 changes: 7 additions & 6 deletions src/testing/Marble.ts
Expand Up @@ -33,16 +33,17 @@ export function marble <T> (message: String, err: Error = new Error()): Array<IE
}

export function toMarble<T> (events: Array<IEvent>) {
var message = ''
var time = START_SUBSCRIPTION_TIME
let time = START_SUBSCRIPTION_TIME
let message = ''
let startCount = (events[0].time - time) / MARBLE_SIZE
while (startCount-- !== 0) message += '-'

events.forEach(ev => {
if (ev.time % MARBLE_SIZE !== 0)
throw TypeError(`the time (${ev.time}) not a multiple of frame ${MARBLE_SIZE}`)
var count = (ev.time - time) / MARBLE_SIZE
let count = (ev.time - time) / MARBLE_SIZE
time = ev.time
while (count-- > 1) {
message += '-'
}
while (count-- > 1) message += '-'
switch (ev.type) {
case EventType.next:
message += (ev as EventNext<T>).value.toString()
Expand Down
2 changes: 1 addition & 1 deletion test/test.AnimationFrame.ts
Expand Up @@ -10,5 +10,5 @@ import {toMarble} from '../src/testing/Marble'
test(t => {
const sh = TestScheduler.of({rafTimeout: 10})
const {results} = sh.start(() => animationFrames(), 200, 300)
t.is(toMarble(results), '012345678')
t.is(toMarble(results), '-012345678')
})
24 changes: 24 additions & 0 deletions test/test.Marble.ts
@@ -0,0 +1,24 @@
/**
* Created by tushar.mathur on 02/11/16.
*/

import test from 'ava'
import {marble, toMarble} from '../src/testing/Marble'
import {ReactiveEvents} from '../src/testing/ReactiveEvents'

test(t => {
const message = 'ABC|'
const events = marble(message)
const message0 = toMarble(events)
t.is(message, message0)
})

test(t => {
const message = toMarble([
ReactiveEvents.next(210, 'A'),
ReactiveEvents.next(220, 'B'),
ReactiveEvents.next(230, 'C'),
ReactiveEvents.complete(240)
])
t.is('-ABC|', message)
})

0 comments on commit 153c1f1

Please sign in to comment.