2

最初にインスタンス化されたときに、最初は親コンテナーの中央に配置する必要があるバックボーン ビューをテストしたいと考えています。これは、ユーザーが要素を div 内でドラッグできるようにする UI の一部です。

この現在のテストは機能していません (要素の左と上がゼロに設定されています)。

私が作成した親要素と子要素が DOM に挿入されることは決してないため、それらの CSS は決して値を取得しないようです。これを行う正しい方法は何ですか?

レンダリング機能:

  $(@el).css
    left: ($(@parent).width() - @el.width) / 2
    top: ($(@parent).height() - @el.height) / 2      
      @

テストコード

it("should center the element", function() {
  var size = { width: 60, height: 90};
  var parent = document.createElement('div');
  $(parent).width(size.width);
  $(parent).height(size.height);

  this.view.parent = parent;
  $(parent).append(this.view.render().el);

  var expectPosition = {
    left: ($(parent).width() - $(this.view.el).width()) / 2,
    top: (size.height - $(this.view.el).height()) / 2,
  }

      expect($(this.view.el).position()).toEqual(expectPosition);
});
4

0 に答える 0