diff --git a/package.json b/package.json index 749ca90..c66f647 100644 --- a/package.json +++ b/package.json @@ -75,6 +75,7 @@ "rxjs": "^7.0.0" }, "dependencies": { - "lodash": "^4.17.20" + "lodash": "^4.17.20", + "pretty-format": "^27.4.2" } } diff --git a/src/utils.ts b/src/utils.ts index 505aa7b..4a238dd 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -8,6 +8,7 @@ import { } from 'rxjs'; import { TestScheduler } from 'rxjs/testing'; import { isEqual } from 'lodash'; +import { format as prettyFormat } from 'pretty-format'; import { getTestScheduler } from './scheduler'; import { TestObservable } from './test-observables'; import { mapSymbolsToNotifications } from './map-symbols-to-notifications'; @@ -182,13 +183,13 @@ function formatMessage( receivedMessages: TestMessages, ) { return ` - Expected: ${expectedMarbles}, - Received: ${receivedMarbles}, +Expected: ${expectedMarbles}, +Received: ${receivedMarbles}, - Expected: - ${JSON.stringify(expectedMessages)} +Expected: +${prettyFormat(expectedMessages)} - Received: - ${JSON.stringify(receivedMessages)}, +Received: +${prettyFormat(receivedMessages)} `; } diff --git a/yarn.lock b/yarn.lock index 23fa823..08ca3c6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1299,6 +1299,17 @@ "@types/yargs" "^16.0.0" chalk "^4.0.0" +"@jest/types@^27.4.2": + version "27.4.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-27.4.2.tgz#96536ebd34da6392c2b7c7737d693885b5dd44a5" + integrity sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^16.0.0" + chalk "^4.0.0" + "@sinonjs/commons@^1.7.0": version "1.8.3" resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" @@ -1496,6 +1507,11 @@ ansi-regex@^5.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.0.tgz#388539f55179bf39339c81af30a654d69f87cb75" integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + ansi-styles@^3.1.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.0.tgz#c159b8d5be0f9e5a6f346dab94f16ce022161b88" @@ -4058,6 +4074,16 @@ pretty-format@^27.0.6: ansi-styles "^5.0.0" react-is "^17.0.1" +pretty-format@^27.4.2: + version "27.4.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-27.4.2.tgz#e4ce92ad66c3888423d332b40477c87d1dac1fb8" + integrity sha512-p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw== + dependencies: + "@jest/types" "^27.4.2" + ansi-regex "^5.0.1" + ansi-styles "^5.0.0" + react-is "^17.0.1" + process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"