<commit_before>
(function(){
  'use strict';
  
  module( 'Pixel Perfect' );
  
  console.log( snapshotFromDataURL );
  
  asyncTest( 'Rectangle with stroke', function() {
    function setup( scene ) {
      scene.addChild( new scenery.Path( {
        shape: scenery.Shape.rectangle( 8, 8, 48, 48 ),
        fill: '#000000',
        stroke: '#ff0000',
        lineWidth: 2
      } ) );
    }
    
    var dataURL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAQUlEQVRYR+3RwQkAMAgDQN1/6LYTlH5EKRfyN5wZzcnm+2EAgdkCK+K0NleBMQMq//QkYAABAgQIECBAgACBrwU2CDoyBu/dqEkAAAAASUVORK5CYII=";
    
    var name = QUnit.config.current.testName;
    snapshotFromDataURL( dataURL, function( dataURLSnapshot ) {
      var $div = $( '<div>' );
      $div.width( dataURLSnapshot.width );
      $div.height( dataURLSnapshot.height );
      
      var scene = new scenery.Scene( $div );
      setup( scene );
      scene.updateScene();
      
      asyncSnapshot( scene, function( sceneSnapshot ) {
        snapshotEquals( sceneSnapshot, dataURLSnapshot, 0, name );
        start();
      }, dataURLSnapshot.width, dataURLSnapshot.height );
    } );
  } );
})();<commit_msg>Wrapping pixel-perfect test in setTimeout for IE9 compatibility since it loads scripts in a weird order<commit_after>
(function(){
  'use strict';
  
  module( 'Pixel Perfect' );
  
  asyncTest( 'Rectangle with stroke', function() {
    function setup( scene ) {
      scene.addChild( new scenery.Path( {
        shape: scenery.Shape.rectangle( 8, 8, 48, 48 ),
        fill: '#000000',
        stroke: '#ff0000',
        lineWidth: 2
      } ) );
    }
    
    var dataURL = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAQUlEQVRYR+3RwQkAMAgDQN1/6LYTlH5EKRfyN5wZzcnm+2EAgdkCK+K0NleBMQMq//QkYAABAgQIECBAgACBrwU2CDoyBu/dqEkAAAAASUVORK5CYII=";
    
    var name = QUnit.config.current.testName;
    
    function process() {
      if ( window.snapshotFromDataURL ) {
        snapshotFromDataURL( dataURL, function( dataURLSnapshot ) {
          var $div = $( '<div>' );
          $div.width( dataURLSnapshot.width );
          $div.height( dataURLSnapshot.height );
          
          var scene = new scenery.Scene( $div );
          setup( scene );
          scene.updateScene();
          
          asyncSnapshot( scene, function( sceneSnapshot ) {
            snapshotEquals( sceneSnapshot, dataURLSnapshot, 0, name );
            start();
          }, dataURLSnapshot.width, dataURLSnapshot.height );
        } );
      } else {
        setTimeout( process, 40 );
      }
    }
    
    setTimeout( process, 40 );
  } );
})();
{'fraction_non_alphanumeric': 0.12153437143942271, 'fraction_numerical': 0.02544625902012913, 'mean_word_length': 2.618131868131868, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4205433', 'n_tokens_mistral': 945, 'n_tokens_neox': 906, 'n_words': 162}