WordPress.org

Make WordPress Core

Ticket #32856: 32856.patch

File 32856.patch, 3.2 KB (added by gitlost, 5 years ago)

Refresh with unittest.

  • src/wp-admin/js/color-picker.js

     
    160160                        $( 'body' ).trigger( 'click.wpcolorpicker' ).on( 'click.wpcolorpicker', this.close );
    161161                },
    162162                close: function() {
    163                         this.element.hide().iris( 'toggle' );
     163                        this.element.hide();
     164                        // if iris hasn't already been destroyed
     165                        if ( this.element.iris( 'instance' ) ) {
     166                                this.element.iris( 'toggle' );
     167                        }
    164168                        this.button.addClass( 'hidden' );
    165169                        this.wrap.removeClass( 'wp-picker-active' );
    166170                        this.toggler.removeClass( 'wp-picker-open' );
  • tests/qunit/index.html

     
    5050                <script type='text/javascript' src='../../src/wp-includes/js/jquery/ui/sortable.js'></script>
    5151                <script type='text/javascript' src='../../src/wp-includes/js/jquery/ui/draggable.js'></script>
    5252                <script type='text/javascript' src='../../src/wp-includes/js/jquery/ui/droppable.js'></script>
     53                <script type='text/javascript' src='../../src/wp-includes/js/jquery/ui/slider.js'></script>
    5354
    5455                <script src="../../src/wp-admin/js/nav-menu.js"></script>
    5556                <script src="../../src/wp-admin/js/customize-nav-menus.js"></script>
    5657                <script src="../../src/wp-admin/js/customize-widgets.js"></script>
    5758                <script src="../../src/wp-admin/js/word-count.js"></script>
     59                <script src="../../src/wp-admin/js/iris.min.js"></script>
     60                <script src="../../src/wp-admin/js/color-picker.js"></script>
    5861
    5962                <!-- Unit tests -->
    6063                <script src="wp-admin/js/password-strength-meter.js"></script>
     
    6669                <script src="wp-admin/js/customize-nav-menus.js"></script>
    6770                <script src="wp-admin/js/customize-widgets.js"></script>
    6871                <script src="wp-admin/js/word-count.js"></script>
     72                <script src="wp-admin/js/color-picker.js"></script>
    6973
    7074                <!-- Customizer templates for sections -->
    7175                <script type="text/html" id="tmpl-customize-section-default">
  • tests/qunit/wp-admin/js/color-picker.js

     
     1/* global jQuery */
     2jQuery( function() {
     3        module( 'color-picker', {
     4                setup: function() {
     5                        window.wpColorPickerL10n = window.wpColorPickerL10n || {
     6                                clear: 'Clear',
     7                                defaultString: 'Default',
     8                                pick: 'Select Color',
     9                                current: 'Current Color'
     10                        };
     11                        jQuery( document.body ).append( '<div id="color-picker-container" style="position:absolute; left:-1000px;"><input id="color-picker" name="color-picker" type="text"></div>' );
     12                },
     13                teardown: function() {
     14                        jQuery( '#color-picker-container' ).remove();
     15                }
     16        } );
     17
     18        // #32856
     19        test( 'close should check that iris hasn\'t been destroyed before toggling it', function() {
     20
     21                var $input = jQuery( 'input#color-picker' );
     22                $input.wpColorPicker();
     23
     24                $input.iris( 'destroy' );
     25                notOk( $input.iris( 'instance' ) );
     26
     27                $input.wpColorPicker( 'close' );
     28                notOk( $input.wpColorPicker( 'instance' ).toggler.hasClass( 'wp-picker-open' ), 'close completed' );
     29        });
     30});