src/cm/media/js/lib/yui/yui_3.0.0b1/examples/test/test-async-test.html
author Yves-Marie Haussonne <ymh.work+github@gmail.com>
Fri, 09 May 2014 18:35:26 +0200
changeset 656 a84519031134
parent 0 40c8f766c9b8
permissions -rw-r--r--
add link to "privacy policy" in the header test
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     1
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     3
<html>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     4
<head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     5
	<title>YUI Library Examples: Test: Asynchronous Testing</title>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     6
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     7
    	<link rel="stylesheet" type="text/css" href="../../assets/yui.css" >
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     8
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     9
<style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    10
    /*Supplemental CSS for the YUI distribution*/
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    11
    #custom-doc { width: 95%; min-width: 950px; }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    12
    #pagetitle {background-image: url(../../assets/bg_hd.gif);}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    13
/*    #pagetitle h1 {background-image: url(../../assets/title_h_bg.gif);}*/
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    14
</style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    15
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    16
<link rel="stylesheet" type="text/css" href="../../assets/dpSyntaxHighlighter.css">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    17
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
<!--there is no custom header content for this example-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
<link type="text/css" rel="stylesheet" href="../../build/cssfonts/fonts-min.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
<script type="text/javascript" src="../../build/yui/yui-min.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
<body id="yahoo-com" class=" yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
<div id="custom-doc" class="yui-t2">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
<div id="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
	<div id="ygunav">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
		<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
            <em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
                <a href="http://developer.yahoo.com/yui/3/">YUI 3.x Home</a> <i> - </i>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
            </em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
		</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
		<form action="http://search.yahoo.com/search" id="sitesearchform">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
            <input name="vs" type="hidden" value="developer.yahoo.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
            <input name="vs" type="hidden" value="yuiblog.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
		    <div id="sitesearch">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
		    	<label for="searchinput">Site Search (YDN &amp; YUIBlog): </label>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
			    <input type="text" id="searchinput" name="p">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
			    <input type="submit" value="Search" id="searchsubmit" class="ygbt">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
		    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
		</form>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
	<div id="ygma"><a href="../../"><img src="../../assets/logo.gif"  border="0" width="200" height="93"></a></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
	<div id="pagetitle"><h1>YUI Library Examples: Test: Asynchronous Testing</h1></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
<div id="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
	<div id="bar-note"><p><strong>Note:</strong> This is YUI 3.x. Looking for <a href="http://developer.yahoo.com/yui/">YUI 2.x</a>?</p></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
	<div id="yui-main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
		<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
		  <div class="yui-ge">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
			  <div class="yui-u first example" id="main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
	<h2>Test: Asynchronous Testing</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
	<div id="example" class="promo">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
	<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
	<p>This example shows how to create an asynchronous test with the YUI Test framework for testing browser-based JavaScript code. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
  A <code>Y.Test.Case</code> object is created with a test that waits for a
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
  few seconds before continuing. The <code>Y.Test.Runner</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
  is then used to run the tests once the page has loaded.</p>	</p>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    63
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    64
	<div class="module example-container ">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
			<div class="hd exampleHd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
			<p class="newWindowButton yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
                <a href="test-async-test_clean.html" target="_blank">View example in new window.</a>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
            </p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
		</div>		<div id="example-canvas" class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
	<!--BEGIN SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
	<div id="testLogger"></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    75
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    76
YUI({base:"../../build/", timeout: 10000}).use("node", "console", "test",function (Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    77
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    78
    Y.namespace("example.test");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    79
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    80
    Y.example.test.AsyncTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    82
        //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
        name : "Asynchronous Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    86
        // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    88
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    89
        /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    90
         * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
        setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
            this.data = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
                name: "test",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
                year: 2007,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
                beta: true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
            };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
        /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
         * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
        tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
            delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   105
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   106
                
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   107
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   108
        // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   109
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   110
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
        testWait : function (){
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
            //do some assertions now
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
            Assert.isTrue(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
            Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
            //wait five seconds and do some more
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
            this.wait(function(){
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
                Assert.isString(this.data.name);                
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
            }, 5000);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   124
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   125
        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   126
                    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   127
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
     
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
    //create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
    var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
        verbose : true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
        newestOnTop : false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   135
    r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   136
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   137
    Y.Test.Runner.add(Y.example.test.AsyncTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
    //run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
    Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
</script>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
	<!--END SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
	</div>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
	<h2 class="first">Asynchronous Test Example</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
<p>This example begins by creating a namespace:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
Y.namespace("example.test");  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
<p>This namespace serves as the core object upon which others will be added (to prevent creating global objects).</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
<h3>Creating the TestCase</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
<p>The first step is to create a new <code>Y.Test.Case</code> object called <code>AsyncTestCase</code>.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
  To do so, using the <code>Y.Test.Case</code> constructor and pass in an object literal containing information about the tests to be run:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
Y.example.test.AsyncTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
    //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
    name : "Asynchronous Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
    // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
    setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
        this.data = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
            name: "test",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
            year: 2007,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
            beta: true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
        };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   184
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   185
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   186
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   187
    tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
        delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   189
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   190
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   191
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   192
    // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
    testWait : function (){
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
        //do some assertions now
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
        Assert.isTrue(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
        Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
        //wait five seconds and do some more
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
        this.wait(function(){
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   204
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   205
            Assert.isString(this.data.name);                
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
        }, 5000);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   208
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   209
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   210
                
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   211
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   212
</textarea>  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
<p>The object literal passed into the constructor contains two different sections. The first section contains the <code>name</code> property,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
  which is used to determine which <code>Y.Test.Case</code> is being executed. A name is necessary, so one is generated if it isn't specified.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
<p>Next, the <code>setUp()</code> and <code>tearDown()</code> methods are included. The <code>setUp()</code> method is used in a <code>Y.Test.Case</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
  to set up data that may be needed for tests to be completed. This method is called immediately before each test is executed. For this example,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   217
  <code>setUp()</code> creates a data object. The <code>tearDown()</code> is responsible for undoing what was done in <code>setUp()</code>. It is
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   218
  run immediately after each test is run and, in this case, deletes the data object that was created by <code>setUp</code>. These methods are optional.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   219
<p>The second section contains the actual tests to be run. The only test is <code>testWait()</code>, which demonstrates using
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
  the <code>wait()</code> method to delay test execution. There are two arguments passed in: a function to run once the test resumes
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
  and the number of milliseconds to wait before running this function (same basic format as <code>setTimeout()</code>). When
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
  the test resumes, the function is executed in the context of the <code>Y.Test.Case</code> object, meaning that it still has
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
  access to all of the same data as the test that called <code>wait()</code>, including properties and methods on the <code>Y.Test.Case</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
  itself. This example shows the anonymous function using both the <code>Y.Assert</code> object and the <code>data</code> property
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
  of the <code>Y.Test.Case</code>.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
<h3>Running the tests</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   228
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
<p>With all of the tests defined, the last step is to run them:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   230
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   231
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   232
//create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   233
var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
    verbose : true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
    newestOnTop : false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
//add the test suite to the runner's queue
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
Y.Test.Runner.add(Y.example.test.AsyncTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   243
//run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
</textarea> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   247
<p>Before running the tests, it's necessary to create a <code>Y.Console</code> object to display the results (otherwise the tests would run 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   248
  but you wouldn't see the results). After that, the <code>Y.Test.Runner</code> is loaded with the <code>Y.Test.Case</code> object by calling 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
  <code>add()</code> (any number of <code>Y.Test.Case</code> and <code>TestSuite</code> objects can be added to a <code>TestRunner</code>, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
  this example only adds one for simplicity). The very last step is to call <code>run()</code>, which begins executing the tests in its
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
  queue and displays the results in the <code>Y.Console</code>.</p>				</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
				<div class="yui-u sidebar">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   253
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   254
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   255
					<div id="examples" class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
						<h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
    Test Examples:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
						<div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
							<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
								<li><a href='../test/test-simple-example.html'>Simple Testing Example</a></li><li><a href='../test/test-advanced-test-options.html'>Advanced Test Options</a></li><li><a href='../test/test-array-tests.html'>Array Processing</a></li><li class='selected'><a href='../test/test-async-test.html'>Asynchronous Testing</a></li><li><a href='../test/test-async-event-tests.html'>Asynchronous Event Testing</a></li>							</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
						</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
					<div class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
						<h4>More Test Resources:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
                        <div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
						<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
							<!-- <li><a href="http://developer.yahoo.com/yui/test/">User's Guide</a> (external)</li> -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
						<li><a href="../../api/module_test.html">API Documentation</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
			  </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
<div class="yui-b toc3" id="tocWrapper">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
<!-- TABLE OF CONTENTS -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
<div id="toc">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
<li class="sect first">YUI 3.x Project</li><li class="item"><a title="The Yahoo! User Interface (YUI) Library, 3.x Branch, " href="http://developer.yahoo.com/yui/3/">YUI 3 Web Site (external)</a></li><li class="item"><a title="Examples of every YUI utility and control in action" href="../../examples/">YUI 3 Examples</a></li><li class="item"><a title="Instantly searchable API documentation for the entire YUI library." href="../../api/">YUI 3 API Docs</a></li><li class="item"><a title="The YUI Library can be downloaded from SourceForge" href="http://sourceforge.net/projects/yui/">YUI 3 on Sourceforge (external)</a></li><li class="item"><a title="YUI is free and open, offered under a BSD license." href="http://developer.yahoo.com/yui/3/license.html">YUI License (external)</a></li><li class="sect">YUI 3 Core - Examples</li><li class="item"><a title="YUI (Global Prerequisite) - Functional Examples" href="../../examples/yui/index.html">YUI (Global Prerequisite)</a></li><li class="item"><a title="Event - Functional Examples" href="../../examples/event/index.html">Event</a></li><li class="item"><a title="Node - Functional Examples" href="../../examples/node/index.html">Node</a></li><li class="sect">YUI 3 Component Infrastructure - Examples</li><li class="item"><a title="Attribute - Functional Examples" href="../../examples/attribute/index.html">Attribute</a></li><li class="item"><a title="Plugin - Functional Examples" href="../../examples/plugin/index.html">Plugin</a></li><li class="item"><a title="Widget - Functional Examples" href="../../examples/widget/index.html">Widget</a></li><li class="sect">YUI 3 Utilities - Examples</li><li class="item"><a title="Animation - Functional Examples" href="../../examples/anim/index.html">Animation</a></li><li class="item"><a title="Cache - Functional Examples" href="../../examples/cache/index.html">Cache</a></li><li class="item"><a title="Cookie - Functional Examples" href="../../examples/cookie/index.html">Cookie</a></li><li class="item"><a title="DataSchema - Functional Examples" href="../../examples/dataschema/index.html">DataSchema</a></li><li class="item"><a title="DataSource - Functional Examples" href="../../examples/datasource/index.html">DataSource</a></li><li class="item"><a title="DataType - Functional Examples" href="../../examples/datatype/index.html">DataType</a></li><li class="item"><a title="Drag &amp; Drop - Functional Examples" href="../../examples/dd/index.html">Drag &amp; Drop</a></li><li class="item"><a title="Get - Functional Examples" href="../../examples/get/index.html">Get</a></li><li class="item"><a title="History - Functional Examples" href="../../examples/history/index.html">History</a></li><li class="item"><a title="ImageLoader - Functional Examples" href="../../examples/imageloader/index.html">ImageLoader</a></li><li class="item"><a title="IO - Functional Examples" href="../../examples/io/index.html">IO</a></li><li class="item"><a title="JSON (JavaScript Object Notation) - Functional Examples" href="../../examples/json/index.html">JSON</a></li><li class="item"><a title="Queue - Functional Examples" href="../../examples/queue/index.html">Queue</a></li><li class="item"><a title="Stylesheet - Functional Examples" href="../../examples/stylesheet/index.html">Stylesheet</a></li><li class="sect">YUI 3 Widgets - Examples</li><li class="item"><a title="Overlay - Functional Examples" href="../../examples/overlay/index.html">Overlay</a></li><li class="item"><a title="Slider - Functional Examples" href="../../examples/slider/index.html">Slider</a></li><li class="sect">YUI 3 Node Plugins - Examples</li><li class="item"><a title="FocusManager Node Plugin - Functional Examples" href="../../examples/node-focusmanager/index.html">FocusManager Node Plugin</a></li><li class="item"><a title="MenuNav Node Plugin - Functional Examples" href="../../examples/node-menunav/index.html">MenuNav Node Plugin</a></li><li class="sect">YUI 3 CSS - Examples</li><li class="item"><a title="YUI CSS Reset - Functional Examples" href="../../examples/cssreset/index.html">CSS Reset</a></li><li class="item"><a title="YUI Fonts - Functional Examples" href="../../examples/cssfonts/index.html">CSS Fonts</a></li><li class="item"><a title="YUI Base - Functional Examples" href="../../examples/cssbase/index.html">CSS Base</a></li><li class="sect">YUI 3 Developer Tools - Examples</li><li class="item"><a title="Console - Functional Examples" href="../../examples/console/index.html">Console</a></li><li class="item"><a title="Profiler - Functional Examples" href="../../examples/profiler/index.html">Profiler</a></li><li class="selected "><a title="Test - Functional Examples" href="../../examples/test/index.html">Test</a></li><li class="sect">The YUI Community</li><li class="item"><a title="The Yahoo! User Interface Blog" href="http://yuiblog.com">YUI Blog (external)</a></li><li class="item"><a title="The Yahoo! Group YDN-JavaScript hosts the YUI community forum" href="http://tech.groups.yahoo.com/group/ydn-javascript/">YUI Forum (external)</a></li><li class="item"><a title="The Yahoo! Group yui3 is dedicated to the 3.x branch of the Yahoo! User Interface (YUI) Library." href="http://tech.groups.yahoo.com/group/yui3/">YUI 3 Forum (external)</a></li><li class="item"><a title="YUI is used by Yahoo! and by hundreds of other sites, including many you know and love." href="/yui/poweredby/">YUI Sightings (external)</a></li><li class="item"><a title="Videos and podcasts from the YUI Team and from the Yahoo! frontend engineering community." href="http://developer.yahoo.com/yui/theater/">YUI Theater (external)</a></li><li class="sect">YUI Articles on the YUI Website</li><li class="item"><a title="Answers to Frequently Asked Questions about the YUI Library" href="http://developer.yahoo.com/yui/articles/faq/">YUI FAQ (external)</a></li><li class="item"><a title="Yahoo!'s philosophy of Graded Browser Support" href="http://developer.yahoo.com/yui/articles/gbs/">Graded Browser Support (external)</a></li><li class="item"><a title="Reporting Bugs and Making Feature Requests for YUI Components" href="http://developer.yahoo.com/yui/articles/reportingbugs/">Bug Reports/Feature Requests (external)</a></li><li class="item"><a title="Serve YUI source files from Yahoo! -- free, fast, and simple" href="http://developer.yahoo.com/yui/3/articles/hosting/">Serving YUI Files from Yahoo! (external)</a></li></ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
	</div><!--closes bd-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   293
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   294
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   295
        <p class="first">Copyright &copy; 2009 Yahoo! Inc. All rights reserved.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   296
        <p><a href="http://privacy.yahoo.com/privacy/us/devel/index.html">Privacy Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   297
            <a href="http://docs.yahoo.com/info/terms/">Terms of Service</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
            <a href="http://docs.yahoo.com/info/copyright/copyright.html">Copyright Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
            <a href="http://careers.yahoo.com/">Job Openings</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
<script src="../../assets/dpSyntaxHighlighter.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
dp.SyntaxHighlighter.HighlightAll('code'); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
</html>