diff --git a/aio/src/app/embedded/code/code.component.spec.ts b/aio/src/app/embedded/code/code.component.spec.ts index 145c583280..99e2b00075 100644 --- a/aio/src/app/embedded/code/code.component.spec.ts +++ b/aio/src/app/embedded/code/code.component.spec.ts @@ -105,6 +105,22 @@ describe('CodeComponent', () => { expect(lis.length).toBe(0, 'should be no linenums'); }); + it('should trim whitespace from the code before rendering', () => { + hostComponent.linenums = false; + hostComponent.code = '\n\n\n' + multiLineCode + '\n\n\n'; + fixture.detectChanges(); + const codeContent = codeComponentDe.nativeElement.querySelector('code').innerText; + expect(codeContent).toEqual(codeContent.trim()); + }); + + it('should trim whitespace from code before computing whether to format linenums', () => { + hostComponent.code = '\n\n\n' + hostComponent.code + '\n\n\n'; + fixture.detectChanges(); + // `
@@ -72,6 +72,8 @@ export class CodeComponent implements OnChanges {
ngOnChanges() {
if (!this.code) { return; }
+ this.code = this.code.trim();
+
const linenums = this.getLinenums();
this.setCodeHtml(this.code); // start with unformatted code