Sha256: 464dc6d9591813699e2f34f6a381955e91131f115d29f4895a6205624120b251

Contents?: true

Size: 1.11 KB

Versions: 1

Compression:

Stored size: 1.11 KB

Contents

import AbstractApplicationTestCase from './abstract-application';
import { ModuleBasedResolver } from '../test-resolver';
import { Component } from '@ember/-internals/glimmer';
import { assign } from '@ember/polyfills';

export default class TestResolverApplicationTestCase extends AbstractApplicationTestCase {
  get applicationOptions() {
    return assign(super.applicationOptions, {
      Resolver: ModuleBasedResolver,
    });
  }

  add(specifier, factory) {
    this.resolver.add(specifier, factory);
  }

  addTemplate(templateName, templateString) {
    this.resolver.add(
      `template:${templateName}`,
      this.compile(templateString, {
        moduleName: `my-app/templates/${templateName}.hbs`,
      })
    );
  }

  addComponent(name, { ComponentClass = Component, template = null }) {
    if (ComponentClass) {
      this.resolver.add(`component:${name}`, ComponentClass);
    }

    if (typeof template === 'string') {
      this.resolver.add(
        `template:components/${name}`,
        this.compile(template, {
          moduleName: `my-app/templates/components/${name}.hbs`,
        })
      );
    }
  }
}

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
discourse-ember-source-3.6.0.0 dist/es/internal-test-helpers/lib/test-cases/test-resolver-application.js