Sha256: 81e42383a233e80fc8c88479d0e25e7ad09aaf66187437f285998b90f080e334

Contents?: true

Size: 1.05 KB

Versions: 2

Compression:

Stored size: 1.05 KB

Contents

import { moduleFor, RenderingTest } from '../../utils/test-case';
import { strip } from '../../utils/abstract-test-case';
import { _registerMacros, _experimentalMacros } from 'ember-glimmer';

moduleFor(
  'registerMacros',
  class extends RenderingTest {
    constructor() {
      let originalMacros = _experimentalMacros.slice();

      _registerMacros(blocks => {
        blocks.add('-let', (params, hash, _default, inverse, builder) => {
          builder.compileParams(params);
          builder.invokeStaticBlock(_default, params.length);
        });
      });

      super(...arguments);
      this.originalMacros = originalMacros;
    }

    teardown() {
      _experimentalMacros.length = 0;
      this.originalMacros.forEach(macro => _experimentalMacros.push(macro));

      super.teardown();
    }

    ['@test allows registering custom syntax via private API']() {
      this.render(
        strip`
      {{#-let obj as |bar|}}
        {{bar}}
      {{/-let}}
    `,
        { obj: 'hello world!' }
      );

      this.assertText('hello world!');
    }
  }
);

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
discourse-ember-source-3.5.1.1 dist/es/ember-glimmer/tests/integration/syntax/experimental-syntax-test.js
discourse-ember-source-3.5.1.0 dist/dist/es/ember-glimmer/tests/integration/syntax/experimental-syntax-test.js