Вот несколько очень полезных вспомогательных функций для меня, когда я пишу модульные тесты Angular.

-
Проверить код здесь.
-

Элементы запроса:

function queryDebugElement(de: DebugElement, selector: string) {
  return de.query(By.css(selector));
}
function queryDebugElements(de: DebugElement, selector: string) {
  return de.queryAll(By.css(selector));
}

Проверяем, есть ли элементы:

function hasElement(de: DebugElement, selector: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  expect(!!queryDebugElement(de, selector)).toBe(true, failedMessage);
}
function hasNoElement(de: DebugElement, selector: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  expect(!!queryDebugElement(de, selector)).toBe(false, failedMessage);
}

Проверяем, есть ли контент:

function hasContent(el: DebugElement | string, content: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  if (typeof el === "string") {
    expect(el).toContain(content, failedMessage);
  } else {
    expect(el.nativeElement.textContent).toContain(content, failedMessage);
  }
}
function hasNoContent(el: DebugElement | string, content: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  if (typeof el === "string") {
    expect(el).not.toContain(content, failedMessage);
  } else {
    expect(el.nativeElement.textContent).not.toContain(content, failedMessage);
  }
}

Проверьте, есть ли классы css:

function hasCssClass(el: DebugElement, cssClass: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  expect(getCssClassArray(el).indexOf(cssClass) > -1).toBe(true, failedMessage);
}
function hasNoCssClass(el: DebugElement, cssClass: string, failedMessage?: string) {
  failedMessage = failedMessage || '';
  expect(getCssClassArray(el).indexOf(cssClass) === -1).toBe(true, failedMessage);
}
function getCssClassLength(de: DebugElement) {
  return getCssClassArray(de).length;
}
function getCssClassArray(de: DebugElement) {
  return de.nativeElement.className.split(" ");
}