123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131 |
- /* global wp, sinon */
- jQuery( function() {
- QUnit.module('Custom Header: ChoiceList', {
- beforeEach: function() {
- wp.customize.HeaderTool.currentHeader = new wp.customize.HeaderTool.ImageModel();
- this.apiStub = sinon.stub(wp.customize, 'get').returns('foo');
- this.choiceList = new wp.customize.HeaderTool.ChoiceList();
- },
- afterEach: function() {
- this.apiStub.restore();
- }
- });
- QUnit.test('should parse _wpCustomizeHeader.uploads into itself', function( assert ) {
- assert.equal(this.choiceList.length, 4);
- });
- QUnit.test('should sort by newest first', function( assert ) {
- assert.equal(this.choiceList.at(2).get('header').attachment_id, 1);
- assert.equal(this.choiceList.first().get('header').attachment_id, 3);
- });
- QUnit.module('Custom Header: DefaultsList', {
- beforeEach: function() {
- wp.customize.HeaderTool.currentHeader = new wp.customize.HeaderTool.ImageModel();
- this.apiStub = sinon.stub(wp.customize, 'get').returns('foo');
- this.choiceList = new wp.customize.HeaderTool.DefaultsList();
- },
- afterEach: function() {
- this.apiStub.restore();
- }
- });
- QUnit.test('it should parse _wpCustomizeHeader.defaults into itself', function( assert ) {
- assert.equal(this.choiceList.length, 4);
- });
- QUnit.test('it parses the default image names', function( assert ) {
- assert.equal(this.choiceList.first().get('header').defaultName, 'circle');
- assert.equal(this.choiceList.at(2).get('header').defaultName, 'star');
- });
- QUnit.module('Custom Header: HeaderImage shouldBeCropped()', {
- beforeEach: function() {
- wp.customize.HeaderTool.currentHeader = new wp.customize.HeaderTool.ImageModel();
- this.model = new wp.customize.HeaderTool.ImageModel();
- this.model.set({
- themeWidth: 1000,
- themeHeight: 200
- });
- }
- });
- QUnit.test('should not be cropped when the theme does not support flex width or height and the image has the same dimensions of the theme image', function( assert ) {
- this.model.set({
- themeFlexWidth: false,
- themeFlexHeight: false,
- imageWidth: 1000,
- imageHeight: 200
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- QUnit.test('should be cropped when the image has the same dimensions of the theme image', function( assert ) {
- this.model.set({
- themeFlexWidth: false,
- themeFlexHeight: false,
- imageWidth: 2000,
- imageHeight: 400
- });
- assert.equal(this.model.shouldBeCropped(), true);
- });
- QUnit.test('should not be cropped when the theme only supports flex width and the image has the same height as the theme image', function( assert ) {
- this.model.set({
- themeFlexWidth: true,
- themeFlexHeight: false,
- imageWidth: 4000,
- imageHeight: 200
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- QUnit.test('should not be cropped when the theme only supports flex height and the image has the same width as the theme image', function( assert ) {
- this.model.set({
- themeFlexWidth: false,
- themeFlexHeight: true,
- imageWidth: 1000,
- imageHeight: 600
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- QUnit.test('should not be cropped when the theme supports flex height AND width', function( assert ) {
- this.model.set({
- themeFlexWidth: true,
- themeFlexHeight: true,
- imageWidth: 10000,
- imageHeight: 8600
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- QUnit.test('should not be cropped when the image width is smaller than or equal to theme width', function( assert ) {
- this.model.set({
- themeFlexWidth: false,
- themeFlexHeight: false,
- imageWidth: 1000,
- imageHeight: 100
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- QUnit.test('should not be cropped when the image width is smaller than or equal to theme width, theme supports flex height and width', function( assert ) {
- this.model.set({
- themeFlexWidth: true,
- themeFlexHeight: true,
- imageWidth: 900,
- imageHeight: 100
- });
- assert.equal(this.model.shouldBeCropped(), false);
- });
- });
|