src/cm/media/js/lib/yui/yui3.0.0/examples/test/test-simple-example.html
author raph
Mon, 23 Nov 2009 15:14:29 +0100
changeset 0 40c8f766c9b8
permissions -rw-r--r--
import from internal svn r 4007
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
<link type="text/css" rel="stylesheet" href="../../build/cssfonts/fonts-min.css" />
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
<script type="text/javascript" src="../../build/yui/yui-min.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
<style type="text/css">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
#testLogger {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
    margin-bottom: 1em;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
#testLogger .yui-console .yui-console-title {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
    border: 0 none;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
    color: #000;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
    font-size: 13px;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
    font-weight: bold;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
    margin: 0;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
    text-transform: none;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
#testLogger .yui-console .yui-console-entry-meta {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
    margin: 0;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
.yui-skin-sam .yui-console-entry-pass .yui-console-entry-cat {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
    background: #070;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
    color: #fff;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
</style>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
<body id="yahoo-com" class=" yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
<div id="custom-doc" class="yui-t2">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
<div id="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
	<div id="ygunav">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
		<p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
            <em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
                <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
    50
            </em>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
		</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
		<form action="http://search.yahoo.com/search" id="sitesearchform">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
            <input name="vs" type="hidden" value="developer.yahoo.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
            <input name="vs" type="hidden" value="yuiblog.com">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
		    <div id="sitesearch">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
		    	<label for="searchinput">Site Search (YDN &amp; YUIBlog): </label>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
			    <input type="text" id="searchinput" name="p">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
			    <input type="submit" value="Search" id="searchsubmit" class="ygbt">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
		    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
		</form>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
    </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
	<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
    63
	<div id="pagetitle"><h1>YUI Library Examples: Test: Simple Testing Example</h1></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    64
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
<div id="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
	<div id="yui-main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
		<div class="yui-b">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
		  <div class="yui-ge">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
			  <div class="yui-u first example" id="main">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
	<h2>Test: Simple Testing Example</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    75
	<div id="example" class="promo">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    76
	<div class="example-intro">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    77
	<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
    78
  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
    79
  <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
    80
  is then used to run the tests once the page has loaded.</p>	</div>	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    82
	<div class="module example-container ">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
			<div class="hd exampleHd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
			<p class="newWindowButton yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
                <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
    86
            </p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
		</div>		<div id="example-canvas" class="bd">
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
	<!--BEGIN SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
	<div id="testLogger"></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
YUI({base:"../../build/", timeout: 10000}).use("node", "console", "test",function (Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
    Y.namespace("example.test");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
    Y.example.test.DataTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
        //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
        name : "Data Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
        // setUp and tearDown methods - optional
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
         * Sets up data that is needed by each 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
        setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
            this.data = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
                name: "test",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
                year: 2007,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
                beta: true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
            };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
        },
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
         * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
        tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
            delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   123
        },
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
        // Test methods - names must begin with "test"
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
        testName : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
            Assert.isString(this.data.name);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
            Assert.areEqual("test", this.data.name);            
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
        testYear : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
            Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
            Assert.areEqual(2007, this.data.year);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
        testBeta : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
            Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
            Assert.isBoolean(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
            Assert.isTrue(this.data.beta);
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
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
    Y.example.test.ArrayTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
        //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
        name : "Array Tests",
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
        // setUp and tearDown methods - optional
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
        /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
         * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
        setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
            this.data = [0,1,2,3,4]
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
        /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
         * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
         */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
        tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
            delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
        //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
        // Test methods - names must begin with "test"
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
        testPop : 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
            var value = this.data.pop();
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(4, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   188
            Assert.areEqual(4, value);            
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
        testPush : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   192
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   193
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   194
            this.data.push(5);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   195
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   196
            Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   197
            Assert.areEqual(5, this.data[5]);            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   198
        },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   199
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   200
        testSplice : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   201
            var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   202
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   203
            this.data.splice(2, 1, 6, 7);
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.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   206
            Assert.areEqual(6, this.data[2]);           
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   207
            Assert.areEqual(7, this.data[3]);           
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
    Y.example.test.ExampleSuite = new Y.Test.Suite("Example Suite");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   213
    Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   214
    Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   215
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   216
    //create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   217
    var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   218
        newestOnTop : false,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   219
        style: 'block' // to anchor in the example content
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   220
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   221
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   222
    r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   223
    
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   224
    Y.Test.Runner.add(Y.example.test.ExampleSuite);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   225
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   226
    //run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   227
    Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   228
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   229
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   230
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   231
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   232
	<!--END SOURCE CODE FOR EXAMPLE =============================== -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   233
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   234
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   235
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   236
	</div>			
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   237
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   238
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   239
	<h2 class="first">Simple Test Example</h2>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   240
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   241
<p>This example begins by creating a namespace:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   242
<div id="syntax1" class="yui-syntax-highlight"><div class="numbers"><pre class="javascript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">Y.<span class="kw2">namespace</span><span class="br0">&#40;</span><span class="st0">&quot;example.test&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div><div class="nonumbers"><pre class="javascript" style="font-family:monospace;">Y.<span class="kw2">namespace</span><span class="br0">&#40;</span><span class="st0">&quot;example.test&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div><textarea id="syntax1-plain">Y.namespace("example.test");</textarea></div><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
   243
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   244
<h3>Creating the first TestCase</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   245
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   246
<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
   247
  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
   248
<div id="syntax2" class="yui-syntax-highlight"><div class="numbers"><pre class="javascript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">DataTestCase</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="kw1">Case</span><span class="br0">&#40;</span><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//name of the test case - if not provided, one is auto-generated</span></div></li><li class="li1"><div class="de1">    <span class="kw3">name</span> <span class="sy0">:</span> <span class="st0">&quot;Data Tests&quot;</span><span class="sy0">,</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">    <span class="co1">// setUp and tearDown methods - optional</span></div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">    <span class="coMULTI">/*</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    * Sets up data that is needed by each test.</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    */</span></div></li><li class="li1"><div class="de1">    setUp <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw1">this</span>.<span class="me1">data</span> <span class="sy0">=</span> <span class="br0">&#123;</span></div></li><li class="li2"><div class="de2">            <span class="kw3">name</span><span class="sy0">:</span> <span class="st0">&quot;test&quot;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">            year<span class="sy0">:</span> <span class="nu0">2007</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">            beta<span class="sy0">:</span> <span class="kw2">true</span></div></li><li class="li1"><div class="de1">        <span class="br0">&#125;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="coMULTI">/*</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    * Cleans up everything that was created by setUp().</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    */</span></div></li><li class="li1"><div class="de1">    tearDown <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li2"><div class="de2">        <span class="kw1">delete</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">    <span class="co1">// Test methods - names must begin with &quot;test&quot;</span></div></li><li class="li2"><div class="de2">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    testName <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isString</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="kw3">name</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="st0">&quot;test&quot;</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="kw3">name</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">    testYear <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isNumber</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">year</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li2"><div class="de2">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">2007</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">year</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    testBeta <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isBoolean</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">beta</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">isTrue</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">beta</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div><div class="nonumbers"><pre class="javascript" style="font-family:monospace;">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">DataTestCase</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="kw1">Case</span><span class="br0">&#40;</span><span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   249
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   250
    <span class="co1">//name of the test case - if not provided, one is auto-generated</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   251
    <span class="kw3">name</span> <span class="sy0">:</span> <span class="st0">&quot;Data Tests&quot;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   252
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   253
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   254
    <span class="co1">// setUp and tearDown methods - optional</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   255
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   256
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   257
    <span class="coMULTI">/*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   258
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   259
     */</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   260
    setUp <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   261
        <span class="kw1">this</span>.<span class="me1">data</span> <span class="sy0">=</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   262
            <span class="kw3">name</span><span class="sy0">:</span> <span class="st0">&quot;test&quot;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   263
            year<span class="sy0">:</span> <span class="nu0">2007</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   264
            beta<span class="sy0">:</span> <span class="kw2">true</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   265
        <span class="br0">&#125;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   266
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   267
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   268
    <span class="coMULTI">/*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   269
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   270
     */</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   271
    tearDown <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   272
        <span class="kw1">delete</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   273
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   274
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   275
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   276
    <span class="co1">// Test methods - names must begin with &quot;test&quot;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   277
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   278
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   279
    testName <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   280
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   281
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   282
        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   283
        Assert.<span class="me1">isString</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="kw3">name</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   284
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="st0">&quot;test&quot;</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="kw3">name</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   285
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   286
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   287
    testYear <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   288
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   289
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   290
        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   291
        Assert.<span class="me1">isNumber</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">year</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   292
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">2007</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">year</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   293
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   294
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   295
    testBeta <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   296
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   297
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   298
        Assert.<span class="me1">isObject</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   299
        Assert.<span class="me1">isBoolean</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">beta</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   300
        Assert.<span class="me1">isTrue</span><span class="br0">&#40;</span><span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">beta</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   301
    <span class="br0">&#125;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   302
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   303
<span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div><textarea id="syntax2-plain">Y.example.test.DataTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   304
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   305
    //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   306
    name : "Data Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   307
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   308
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   309
    // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   310
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   311
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   312
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   313
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   314
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   315
    setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   316
        this.data = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   317
            name: "test",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   318
            year: 2007,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   319
            beta: true
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   320
        };
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
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   324
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   325
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   326
    tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   327
        delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   328
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   329
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   330
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   331
    // Test methods - names must begin with "test"
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
    testName : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   335
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   336
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   337
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   338
        Assert.isString(this.data.name);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   339
        Assert.areEqual("test", this.data.name);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   340
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   341
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   342
    testYear : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   343
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   344
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   345
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   346
        Assert.isNumber(this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   347
        Assert.areEqual(2007, this.data.year);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   348
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   349
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   350
    testBeta : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   351
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   352
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   353
        Assert.isObject(this.data);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   354
        Assert.isBoolean(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   355
        Assert.isTrue(this.data.beta);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   356
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   357
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   358
});</textarea></div><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
   359
  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
   360
<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
   361
  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
   362
  <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
   363
  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
   364
<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
   365
  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
   366
<p>The first test in this object is <code>testName()</code>, which runs
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   367
  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
   368
  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
   369
  <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
   370
  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
   371
  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
   372
  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
   373
  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
   374
<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
   375
  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
   376
  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
   377
  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
   378
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   379
 <h3>Creating the second TestCase</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   380
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   381
 <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
   382
   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
   383
 <div id="syntax3" class="yui-syntax-highlight"><div class="numbers"><pre class="javascript" style="font-family:monospace;"><ol><li class="li1"><div class="de1"> Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ArrayTestCase</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="kw1">Case</span><span class="br0">&#40;</span><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//name of the test case - if not provided, one is auto-generated</span></div></li><li class="li1"><div class="de1">    <span class="kw3">name</span> <span class="sy0">:</span> <span class="st0">&quot;Array Tests&quot;</span><span class="sy0">,</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">    <span class="co1">// setUp and tearDown methods - optional</span></div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">    <span class="coMULTI">/*</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    * Sets up data that is needed by each test.</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    */</span></div></li><li class="li1"><div class="de1">    setUp <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw1">this</span>.<span class="me1">data</span> <span class="sy0">=</span> <span class="br0">&#91;</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">1</span><span class="sy0">,</span><span class="nu0">2</span><span class="sy0">,</span><span class="nu0">3</span><span class="sy0">,</span><span class="nu0">4</span><span class="br0">&#93;</span></div></li><li class="li2"><div class="de2">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="coMULTI">/*</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    * Cleans up everything that was created by setUp().</span></div></li><li class="li1"><div class="de1"><span class="coMULTI">&nbsp;    */</span></div></li><li class="li2"><div class="de2">    tearDown <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw1">delete</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li2"><div class="de2">    <span class="co1">// Test methods - names must begin with &quot;test&quot;</span></div></li><li class="li1"><div class="de1">    <span class="co1">//---------------------------------------------------------------------</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    testPop <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> value <span class="sy0">=</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">pop</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">4</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">4</span><span class="sy0">,</span> value<span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li2"><div class="de2">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">    testPush <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">        <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">push</span><span class="br0">&#40;</span><span class="nu0">5</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">5</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span><span class="sy0">,</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">    testSplice <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">        <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">splice</span><span class="br0">&#40;</span><span class="nu0">2</span><span class="sy0">,</span> <span class="nu0">1</span><span class="sy0">,</span> <span class="nu0">6</span><span class="sy0">,</span> <span class="nu0">7</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">7</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">    <span class="br0">&#125;</span></div></li><li class="li2"><div class="de2">&nbsp;</div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div><div class="nonumbers"><pre class="javascript" style="font-family:monospace;"> Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ArrayTestCase</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="kw1">Case</span><span class="br0">&#40;</span><span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   384
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   385
    <span class="co1">//name of the test case - if not provided, one is auto-generated</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   386
    <span class="kw3">name</span> <span class="sy0">:</span> <span class="st0">&quot;Array Tests&quot;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   387
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   388
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   389
    <span class="co1">// setUp and tearDown methods - optional</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   390
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   391
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   392
    <span class="coMULTI">/*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   393
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   394
     */</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   395
    setUp <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   396
        <span class="kw1">this</span>.<span class="me1">data</span> <span class="sy0">=</span> <span class="br0">&#91;</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">1</span><span class="sy0">,</span><span class="nu0">2</span><span class="sy0">,</span><span class="nu0">3</span><span class="sy0">,</span><span class="nu0">4</span><span class="br0">&#93;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   397
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   398
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   399
    <span class="coMULTI">/*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   400
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   401
     */</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   402
    tearDown <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   403
        <span class="kw1">delete</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   404
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   405
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   406
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   407
    <span class="co1">// Test methods - names must begin with &quot;test&quot;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   408
    <span class="co1">//---------------------------------------------------------------------</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   409
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   410
    testPop <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   411
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   412
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   413
        <span class="kw2">var</span> value <span class="sy0">=</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">pop</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   414
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   415
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">4</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   416
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">4</span><span class="sy0">,</span> value<span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   417
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   418
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   419
    testPush <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   420
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   421
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   422
        <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">push</span><span class="br0">&#40;</span><span class="nu0">5</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   423
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   424
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   425
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">5</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">5</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   426
    <span class="br0">&#125;</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   427
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   428
    testSplice <span class="sy0">:</span> <span class="kw2">function</span> <span class="br0">&#40;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   429
        <span class="kw2">var</span> Assert <span class="sy0">=</span> Y.<span class="me1">Assert</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   430
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   431
        <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">splice</span><span class="br0">&#40;</span><span class="nu0">2</span><span class="sy0">,</span> <span class="nu0">1</span><span class="sy0">,</span> <span class="nu0">6</span><span class="sy0">,</span> <span class="nu0">7</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   432
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   433
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span>.<span class="me1">length</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   434
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">6</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">2</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   435
        Assert.<span class="me1">areEqual</span><span class="br0">&#40;</span><span class="nu0">7</span><span class="sy0">,</span> <span class="kw1">this</span>.<span class="me1">data</span><span class="br0">&#91;</span><span class="nu0">3</span><span class="br0">&#93;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   436
    <span class="br0">&#125;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   437
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   438
<span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div><textarea id="syntax3-plain"> Y.example.test.ArrayTestCase = new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   439
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   440
    //name of the test case - if not provided, one is auto-generated
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   441
    name : "Array Tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   442
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   443
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   444
    // setUp and tearDown methods - optional
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   445
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   446
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   447
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   448
     * Sets up data that is needed by each test.
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   449
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   450
    setUp : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   451
        this.data = [0,1,2,3,4]
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   452
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   453
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   454
    /*
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   455
     * Cleans up everything that was created by setUp().
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   456
     */
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   457
    tearDown : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   458
        delete this.data;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   459
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   460
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   461
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   462
    // Test methods - names must begin with "test"
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   463
    //---------------------------------------------------------------------
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   464
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   465
    testPop : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   466
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   467
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   468
        var value = this.data.pop();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   469
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   470
        Assert.areEqual(4, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   471
        Assert.areEqual(4, value);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   472
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   473
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   474
    testPush : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   475
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   476
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   477
        this.data.push(5);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   478
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   479
        Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   480
        Assert.areEqual(5, this.data[5]);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   481
    },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   482
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   483
    testSplice : function () {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   484
        var Assert = Y.Assert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   485
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   486
        this.data.splice(2, 1, 6, 7);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   487
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   488
        Assert.areEqual(6, this.data.length);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   489
        Assert.areEqual(6, this.data[2]);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   490
        Assert.areEqual(7, this.data[3]);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   491
    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   492
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   493
});</textarea></div> <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
   494
  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
   495
  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
   496
  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
   497
  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
   498
  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
   499
  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
   500
  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
   501
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   502
<h3>Creating the TestSuite</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   503
<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
   504
  added to it:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   505
<div id="syntax4" class="yui-syntax-highlight"><div class="numbers"><pre class="javascript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="me1">Suite</span><span class="br0">&#40;</span><span class="st0">&quot;Example Suite&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">DataTestCase</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ArrayTestCase</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div><div class="nonumbers"><pre class="javascript" style="font-family:monospace;">Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span> <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Test</span>.<span class="me1">Suite</span><span class="br0">&#40;</span><span class="st0">&quot;Example Suite&quot;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   506
Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">DataTestCase</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   507
Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ArrayTestCase</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div><textarea id="syntax4-plain">Y.example.test.ExampleSuite = new Y.Test.Suite("Example Suite");
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   508
Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   509
Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);</textarea></div><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
   510
  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
   511
  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
   512
<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
   513
  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
   514
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   515
<h3>Running the tests</h3>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   516
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   517
<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
   518
  components have been loaded:</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   519
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   520
<div id="syntax5" class="yui-syntax-highlight"><div class="numbers"><pre class="javascript" style="font-family:monospace;"><ol><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1"><span class="co1">//create the console</span></div></li><li class="li1"><div class="de1"><span class="kw2">var</span> r <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Console</span><span class="br0">&#40;</span><span class="br0">&#123;</span></div></li><li class="li1"><div class="de1">    verbose <span class="sy0">:</span> <span class="kw2">true</span><span class="sy0">,</span></div></li><li class="li2"><div class="de2">    newestOnTop <span class="sy0">:</span> <span class="kw2">false</span></div></li><li class="li1"><div class="de1"><span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1">r.<span class="me1">render</span><span class="br0">&#40;</span><span class="st0">'#testLogger'</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li2"><div class="de2">Y.<span class="me1">Test</span>.<span class="me1">Runner</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li><li class="li1"><div class="de1">&nbsp;</div></li><li class="li1"><div class="de1"><span class="co1">//run the tests</span></div></li><li class="li1"><div class="de1">Y.<span class="me1">Test</span>.<span class="me1">Runner</span>.<span class="me1">run</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></div></li></ol></pre></div><div class="nonumbers"><pre class="javascript" style="font-family:monospace;">&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   521
<span class="co1">//create the console</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   522
<span class="kw2">var</span> r <span class="sy0">=</span> <span class="kw2">new</span> Y.<span class="me1">Console</span><span class="br0">&#40;</span><span class="br0">&#123;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   523
    verbose <span class="sy0">:</span> <span class="kw2">true</span><span class="sy0">,</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   524
    newestOnTop <span class="sy0">:</span> <span class="kw2">false</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   525
<span class="br0">&#125;</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   526
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   527
r.<span class="me1">render</span><span class="br0">&#40;</span><span class="st0">'#testLogger'</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   528
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   529
Y.<span class="me1">Test</span>.<span class="me1">Runner</span>.<span class="me1">add</span><span class="br0">&#40;</span>Y.<span class="me1">example</span>.<span class="me1">test</span>.<span class="me1">ExampleSuite</span><span class="br0">&#41;</span><span class="sy0">;</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   530
&nbsp;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   531
<span class="co1">//run the tests</span>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   532
Y.<span class="me1">Test</span>.<span class="me1">Runner</span>.<span class="me1">run</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="sy0">;</span></pre></div><textarea id="syntax5-plain">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   533
//create the console
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   534
var r = new Y.Console({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   535
    verbose : true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   536
    newestOnTop : false
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   537
});
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   538
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   539
r.render('#testLogger');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   540
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   541
Y.Test.Runner.add(Y.example.test.ExampleSuite);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   542
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   543
//run the tests
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   544
Y.Test.Runner.run();</textarea></div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   545
<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
   546
  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
   547
  <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
   548
  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
   549
  queue and displays the results in the <code>Y.Console</code>.</p>				</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   550
				<div class="yui-u sidebar">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   551
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   552
				
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   553
					<div id="examples" class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   554
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   555
						<h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   556
    Test Examples:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   557
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   558
						<div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   559
							<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   560
								<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
   561
						</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   562
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   563
					
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   564
					<div class="mod box4">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   565
                        <div class="hd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   566
						<h4>More Test Resources:</h4>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   567
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   568
                        <div class="bd">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   569
						<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   570
							<!-- <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
   571
<li><a href="../../api/module_test.html">API Documentation</a></li></ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   572
                        </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   573
					</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   574
			  </div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   575
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   576
		
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   577
		</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   578
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   579
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   580
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   581
<div class="yui-b toc3" id="tocWrapper">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   582
<!-- TABLE OF CONTENTS -->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   583
<div id="toc">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   584
	
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   585
<ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   586
<li class="sect first">YUI 3 Resources</li><li class="item"><a title="YUI 3 -- Yahoo! User Interface (YUI) Library" href="http://developer.yahoo.com/yui/3/">YUI 3 Web Site</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="YUI 3 Dependency Configurator -- configure your custom YUI implementation" href="http://developer.yahoo.com/yui/3/configurator">YUI 3 Dependency Configurator</a></li><li class="item"><a title="The YUI 3 Forum on YUILibrary.com" href="http://yuilibrary.com/forum/viewforum.php?f=15">YUI 3 Forums (external)</a></li><li class="item"><a title="Found a bug or a missing feature? Let us know on YUILibrary.com." href="http://developer.yahoo.com/yui/articles/reportingbugs/">Bug Reports/Feature Requests</a></li><li class="item"><a title="YUI is free and open, offered under a BSD license." href="http://developer.yahoo.com/yui/license.html">YUI License</a></li><li class="item"><a title="Download and fork the YUI project on GitHub" href="http://github.com/yui">YUI on Github</a></li><li class="item"><a title="The Yahoo! User Interface Blog" href="http://yuiblog.com">YUI Blog (external)</a></li><li class="sect">YUI 3 Core - Examples</li><li class="item"><a title="YUI Global Object - Functional Examples" href="../../examples/yui/index.html">YUI Global Object</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 <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="Widget - Functional Examples" href="../../examples/widget/index.html">Widget <img src='http://l.yimg.com/a/i/not/beta_1.gif'></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="AsyncQueue - Functional Examples" href="../../examples/async-queue/index.html">AsyncQueue</a></li><li class="item"><a title="Browser History - Functional Examples" href="../../examples/history/index.html">Browser History</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 <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="DataSource - Functional Examples" href="../../examples/datasource/index.html">DataSource <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="DataType - Functional Examples" href="../../examples/datatype/index.html">DataType <img src='http://l.yimg.com/a/i/not/beta_1.gif'></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="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="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 <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="Slider - Functional Examples" href="../../examples/slider/index.html">Slider <img src='http://l.yimg.com/a/i/not/beta_1.gif'></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 <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="MenuNav Node Plugin - Functional Examples" href="../../examples/node-menunav/index.html">MenuNav Node Plugin <img src='http://l.yimg.com/a/i/not/beta_1.gif'></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 <img src='http://l.yimg.com/a/i/not/beta_1.gif'></a></li><li class="item"><a title="Console Filters Plugin- Functional Examples" href="../../examples/console-filters/index.html">Plugin.ConsoleFilters <img src='http://l.yimg.com/a/i/not/beta_1.gif'></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">Other Useful YUI 3 Resources</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="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></ul>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   587
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   588
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   589
	</div><!--closes bd-->
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   590
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   591
	<div id="ft">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   592
        <p class="first">Copyright &copy; 2009 Yahoo! Inc. All rights reserved.</p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   593
        <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
   594
            <a href="http://docs.yahoo.com/info/terms/">Terms of Service</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   595
            <a href="http://docs.yahoo.com/info/copyright/copyright.html">Copyright Policy</a> - 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   596
            <a href="http://careers.yahoo.com/">Job Openings</a></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   597
	</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   598
</div>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   599
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   600
var yuiConfig = {base:"../../build/", timeout: 10000};
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   601
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   602
<script src="../../assets/syntax.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   603
<script src="../../assets/dpSyntaxHighlighter.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   604
<script language="javascript"> 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   605
dp.SyntaxHighlighter.HighlightAll('code'); 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   606
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   607
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   608
</html>