Skip to content

Commit 579c679

Browse files
committed
feat(parseobservablemarble): define interfaces for parseObservableMarble
1 parent 43a8503 commit 579c679

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

src/marbles/parseObservableMarble.ts

+21
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
import { TestMessage } from '../message/TestMessage';
2+
import { SubscriptionMarbleToken } from './SubscriptionMarbleToken';
3+
4+
const parseObservableMarble = <T>(
5+
marble: string,
6+
_value?: { [key: string]: T },
7+
_error?: any,
8+
_materializeInnerObservables: boolean = false
9+
): Array<TestMessage<T>> => {
10+
if (marble.indexOf(SubscriptionMarbleToken.UNSUBSCRIBE) !== -1) {
11+
throw new Error(`Observable marble cannot have unsubscription marker ${SubscriptionMarbleToken.UNSUBSCRIBE}`);
12+
}
13+
14+
const messages = Array.from(marble).reduce((acc: Array<any>, _value: string) => {
15+
return acc;
16+
}, []);
17+
18+
return messages;
19+
};
20+
21+
export { parseObservableMarble };

0 commit comments

Comments
 (0)