src/cm/media/js/lib/yui/yui_3.0.0b1/examples/test/test-simple-example.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: Simple Testing Example</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: Simple Testing Example</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: Simple Testing Example</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 basic usage of the YUI Test framework for testing browser-based JavaScript code. 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
  Two different <a href="/yui/test/#testcase"><code>TestCase</code></a> objects are created and added to a
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
  <a href="/yui/test/#testsuite"><code>TestSuite</code></a> object. The <a href="/yui/test/#testrunner"><code>TestRunner</code></a>
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-simple-example_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.DataTestCase = 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 : "Data 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
        testName : 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
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
            Assert.isString(this.data.name);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
            Assert.areEqual("test", this.data.name);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
        testYear : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
            Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   124
            Assert.areEqual(2007, this.data.year);            
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
        testBeta : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
            Assert.isBoolean(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
            Assert.isTrue(this.data.beta);
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
    });
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.example.test.ArrayTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
        //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
        name : "Array Tests",
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
        // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
        //---------------------------------------------------------------------
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
         * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
        setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
            this.data = [0,1,2,3,4]
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
        /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
         * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
        tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
            delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
        // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
        testPop : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
            var value = this.data.pop();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
            Assert.areEqual(4, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
            Assert.areEqual(4, value);            
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
        testPush : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
            this.data.push(5);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
            Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
            Assert.areEqual(5, this.data[5]);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
        testSplice : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   184
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   185
            this.data.splice(2, 1, 6, 7);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   186
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   187
            Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
            Assert.areEqual(6, this.data[2]);           
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   189
            Assert.areEqual(7, this.data[3]);           
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
    });    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
    Y.example.test.ExampleSuite = new Y.Test.Suite("Example Suite");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
    Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
    Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
    //create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
    var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
        verbose : true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
        //consoleLimit : 10,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
        newestOnTop : false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   204
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   205
    r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
    Y.Test.Runner.add(Y.example.test.ExampleSuite);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   208
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   209
    //run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   210
    Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   211
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   212
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
</script>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
	<!--END SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   217
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   218
	</div>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   219
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
	<h2 class="first">Simple Test Example</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
<p>This example begins by creating a namespace:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
Y.namespace("example.test");  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
</textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
<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
   228
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
<h3>Creating the first TestCase</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   230
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   231
<p>The first step is to create a new <code>Y.Test.Case</code> object called <code>DataTestCase</code>.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   232
  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
   233
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
Y.example.test.DataTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
    //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
    name : "Data Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
    // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   243
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
    setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   247
        this.data = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   248
            name: "test",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
            year: 2007,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
            beta: true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
        };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
    },
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
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
    tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
        delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
    // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
    testName : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
        Assert.isString(this.data.name);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
        Assert.areEqual("test", this.data.name);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
    testYear : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
        Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
        Assert.areEqual(2007, this.data.year);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
    testBeta : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
        Assert.isBoolean(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
        Assert.isTrue(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
</textarea>  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
<p>The object literal passed into the constructor contains a number of different sections. The first section contains the <code>name</code> property,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
  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
   293
<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
   294
  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
   295
  <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
   296
  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
   297
<p>The last section contains the actual tests to be run. Test method names must always begin with the word &quot;test&quot; (all lowercase) in order
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
  to differentiate them from other methods that may be added to the object.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
<p>The first test in this object is <code>testName()</code>, which runs
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
  various assertions on <code>data.name</code>. Inside of this method, a shortcut to <code>Y.Assert</code> is set up and used to run three
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
  assertions: <code>isObject()</code> on <code>data</code>, <code>isString()</code> on <code>data.name</code> and <code>areEqual()</code> to compare
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
  <code>data.name</code> to the expected value, &quot;test&quot;. These assertions are arranged in order from least-specific to most-specific,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
  which is the recommended way to arrange your assertions. Basically, the third assertion is useless to run unless the second has passes and the second
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
  can't possibly pass unless the first passed. Both <code>isObject()</code> and <code>isString()</code> accept a single argument, which is the value
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
  to test (you could optionally include a failure message as a second argument, though this is not required). The <code>areEqual()</code> method
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
  expects two arguments, the first being the expected value (&quot;test&quot;) and the second being the actual value (<code>data.name</code>).</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
<p>The second and third tests follow the same pattern as the first with the exception that they work with different data types. The <code>testYear()</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   308
  method works with <code>data.year</code>, which is a number and so runs tests specifically for numbers (<code>areEqual()</code> can be used with
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   309
  all data types). The <code>testBeta()</code> method works with <code>data.beta</code>, which is a Boolean, and so it uses the <code>isTrue()</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   310
  assertion instead of <code>areEqual()</code> (though it could also use <code>areEqual(true, this.data.beta)</code>).</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   311
 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   312
 <h3>Creating the second TestCase</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   313
 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   314
 <p>Although it's possible that you'll have only one <code>Y.Test.Case</code> object, typically there is more than one, and so this example includes
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   315
   a second <code>Y.Test.Case</code>. This one tests some of the built-in functions of the <code>Array</code> object:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   316
 <textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   317
 Y.example.test.ArrayTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   318
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   319
    //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   320
    name : "Array Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   321
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   322
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   323
    // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   324
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   325
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   326
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   327
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   328
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   329
    setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   330
        this.data = [0,1,2,3,4]
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   331
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   332
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   333
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   334
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   335
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   336
    tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   337
        delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   338
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   339
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   340
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   341
    // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   342
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   343
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   344
    testPop : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   345
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   346
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   347
        var value = this.data.pop();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   348
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   349
        Assert.areEqual(4, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   350
        Assert.areEqual(4, value);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   351
    },        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   352
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   353
    testPush : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   354
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   355
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   356
        this.data.push(5);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   357
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   358
        Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   359
        Assert.areEqual(5, this.data[5]);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   360
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   361
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   362
    testSplice : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   363
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   364
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   365
        this.data.splice(2, 1, 6, 7);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   366
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   367
        Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   368
        Assert.areEqual(6, this.data[2]);           
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   369
        Assert.areEqual(7, this.data[3]);           
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   370
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   371
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   372
});  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   373
 </textarea>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   374
 <p>As with the first <code>Y.Test.Case</code>, this one is split up into three sections: the name, the <code>setUp()</code> and <code>tearDown()</code> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   375
  methods, and the test methods. The <code>setUp()</code> method in this <code>Y.Test.Case</code> creates an array of data to be used by the various
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   376
  tests while the <code>tearDown()</code> method destroys the array. The test methods are very simple, testing the <code>pop()</code>, <code>push()</code>,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   377
  and <code>splice()</code> methods. Each test method uses <code>areEqual()</code> exclusively, to show the different ways that it can be used.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   378
  The <code>testPop()</code> method calls <code>pop()</code> on the array of values, then verifies that the length of the array has changed and
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   379
  that the value popped off is 4; the <code>testPush()</code> pushes a new value (5) onto the array and then verifies that the length of the array has
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   380
  changed and that the value is included in the correct location; the <code>testSplice()</code> method tests  <code>splice()</code> by removing one
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   381
  value that's already in the array and inserting two in its place.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   382
  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   383
<h3>Creating the TestSuite</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   384
<p>To better organize the two <code>Y.Test.Case</code> objects, a <code>Y.Test.Suite</code> is created and those two <code>Y.Test.Case</code> objects are
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   385
  added to it:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   386
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   387
Y.example.test.ExampleSuite = new Y.Test.Suite("Example Suite");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   388
Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   389
Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   390
</textarea> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   391
<p>The first line creates a new <code>Y.Test.Suite</code> object using its constructor, which accepts a single argument - the name of the suite. As with
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   392
  the name of a <code>Y.Test.Case</code>, the <code>Y.Test.Suite</code> name is used to determine where execution is when tests are being executed. Although
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   393
  not required (one is generated if it's not provided), it is recommended that you select a meaningful name to aid in debugging.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   394
<p>Any number of <code>Y.Test.Case</code> and <code>Y.Test.Suite</code> objects can be added to a <code>Y.Test.Suite</code> by using the <code>add()</code>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   395
  method. In this example, the two <code>Y.Test.Case</code> objects created earlier are added to the <code>Y.Test.Suite</code>.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   396
  
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   397
<h3>Running the tests</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   398
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   399
<p>With all of the tests defined, the last step is to run them. This initialization is assigned to take place when all of the YUI
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   400
  components have been loaded:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   401
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   402
<textarea name="code" class="JScript" cols="60" rows="1">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   403
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   404
//create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   405
var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   406
    verbose : true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   407
    newestOnTop : false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   408
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   409
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   410
r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   411
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   412
Y.Test.Runner.add(Y.example.test.ExampleSuite);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   413
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   414
//run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   415
Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   416
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   417
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   418
</textarea> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   419
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   420
<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
   421
  but you wouldn't see the results). After that, the <code>Y.Test.Runner</code> is loaded with the <code>Y.Test.Suite</code> object by calling 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   422
  <code>add()</code> (any number of <code>Y.Test.Case</code> and <code>Y.Test.Suite</code> objects can be added to a <code>Y.Test.Runner</code>, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   423
  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
   424
  queue and displays the results in the <code>Y.Console</code>.</p>				</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   425
				<div class="yui-u sidebar">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   426
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   427
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   428
					<div id="examples" class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   429
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   430
						<h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   431
    Test Examples:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   432
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   433
						<div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   434
							<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   435
								<li class='selected'><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><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
   436
						</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   437
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   438
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   439
					<div class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   440
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   441
						<h4>More Test Resources:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   442
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   443
                        <div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   444
						<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   445
							<!-- <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
   446
						<li><a href="../../api/module_test.html">API Documentation</a></li>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   447
</ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   448
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   449
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   450
			  </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   451
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   452
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   453
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   454
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   455
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   456
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   457
<div class="yui-b toc3" id="tocWrapper">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   458
<!-- TABLE OF CONTENTS -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   459
<div id="toc">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   460
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   461
<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   462
<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
   463
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   464
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   465
	</div><!--closes bd-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   466
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   467
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   468
        <p class="first">Copyright &copy; 2009 Yahoo! Inc. All rights reserved.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   469
        <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
   470
            <a href="http://docs.yahoo.com/info/terms/">Terms of Service</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   471
            <a href="http://docs.yahoo.com/info/copyright/copyright.html">Copyright Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   472
            <a href="http://careers.yahoo.com/">Job Openings</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   473
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   474
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   475
<script src="../../assets/dpSyntaxHighlighter.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   476
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   477
dp.SyntaxHighlighter.HighlightAll('code'); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   478
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   479
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   480
</html>