Skip to content

SchematicTestRunner.callRule does not use the logger by default #12087

Open
@alexeagle

Description

@alexeagle

From @FrozenPandaz on June 6, 2018 3:12

Bug Report or Feature Request (mark with an x)

- [x] bug report -> please search issues before submitting
- [ ] feature request

Area

- [x] devkit
- [ ] schematics

Versions

Ubuntu

Repro steps

    const schematicRunner = new SchematicTestRunner(
      collectionName,
      pathToCollectionJson
    );
    const spy = spyOn(schematicRunner.logger, 'info');
    schematicRunner
      .callRule((host: Tree, context: SchematicContext) => {
        context.logger.info('Hello world!');
      , Tree.empty())
      .subscribe(result => {
        expect(spy).toHaveBeenCalledWith('Hello world!');
      });

The log given by the failure

Expected spy to have been called 'Hello world!' but was not called.

Desired functionality

The SchematicTestRunner logger should be used by default and the test should pass

Mention any other details that might be useful

Any unit tests which test rules

Copied from original issue: angular/devkit#1016

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions