src/cm/media/js/lib/yui/yui_3.10.3/docs/test/test-simple-example.html
author gibus
Tue, 16 Jul 2013 14:29:46 +0200
changeset 525 89ef5ed3c48b
permissions -rw-r--r--
Upgrades to yui 3.10.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
525
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     1
<!DOCTYPE html>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     2
<html lang="en">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     3
<head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     4
    <meta charset="utf-8">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     5
    <title>Example: Simple Testing Example</title>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     6
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=PT+Sans:400,700,400italic,700italic">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     7
    <link rel="stylesheet" href="../../build/cssgrids/cssgrids-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     8
    <link rel="stylesheet" href="../assets/css/main.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
     9
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    10
    <link rel="shortcut icon" type="image/png" href="../assets/favicon.png">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    11
    <script src="../../build/yui/yui-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    12
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    13
</head>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    14
<body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    15
<!--
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    16
<a href="https://github.com/yui/yui3"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub"></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    17
-->
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    18
<div id="doc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    19
    <div id="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    20
        <h1><img src="http://yuilibrary.com/img/yui-logo.png"></h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    21
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    22
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    23
        <a href="#toc" class="jump">Jump to Table of Contents</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    24
    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    25
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    26
            <h1>Example: Simple Testing Example</h1>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    27
    <div class="yui3-g">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    28
        <div class="yui3-u-3-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    29
            <div id="main">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    30
                <div class="content"><div class="intro">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    31
    <p>This example shows basic usage of the YUI Test framework for testing browser-based JavaScript code.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    32
      Two different <a href="index.html#testcase"><code>TestCase</code></a> objects are created and added to a
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    33
      <a href="index.html#testsuite"><code>TestSuite</code></a> object. The <a href="index.html#testrunner"><code>TestRunner</code></a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    34
      is then used to run the tests once the page has loaded.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    35
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    36
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    37
<div class="example yui3-skin-sam">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    38
    <div id="testLogger"></div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    39
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    40
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    41
YUI().use('node', 'test-console', 'test', function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    42
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    43
    Y.namespace("example.test");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    44
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    45
    Y.example.test.DataTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    46
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    47
        //name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    48
        name : "Data Tests",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    49
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    50
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    51
        // setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    52
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    53
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    54
        /*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    55
         * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    56
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    57
        setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    58
            this.data = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    59
                name: "test",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    60
                year: 2007,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    61
                beta: true
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    62
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    63
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    64
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    65
        /*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    66
         * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    67
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    68
        tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    69
            delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    70
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    71
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    72
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    73
        // Test methods - names must begin with "test"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    74
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    75
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    76
        testName : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    77
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    78
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    79
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    80
            Assert.isString(this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    81
            Assert.areEqual("test", this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    82
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    83
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    84
        testYear : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    85
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    86
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    87
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    88
            Assert.isNumber(this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    89
            Assert.areEqual(2007, this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    90
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    91
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    92
        testBeta : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    93
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    94
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    95
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    96
            Assert.isBoolean(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    97
            Assert.isTrue(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    98
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
    99
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   100
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   101
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   102
    Y.example.test.ArrayTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   103
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   104
        //name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   105
        name : "Array Tests",
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   106
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   107
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   108
        // setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   109
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   110
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   111
        /*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   112
         * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   113
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   114
        setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   115
            this.data = [0,1,2,3,4]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   116
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   117
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   118
        /*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   119
         * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   120
         */
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   121
        tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   122
            delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   123
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   124
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   125
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   126
        // Test methods - names must begin with "test"
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   127
        //---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   128
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   129
        testPop : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   130
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   131
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   132
            var value = this.data.pop();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   133
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   134
            Assert.areEqual(4, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   135
            Assert.areEqual(4, value);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   136
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   137
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   138
        testPush : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   139
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   140
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   141
            this.data.push(5);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   142
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   143
            Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   144
            Assert.areEqual(5, this.data[5]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   145
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   146
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   147
        testSplice : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   148
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   149
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   150
            this.data.splice(2, 1, 6, 7);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   151
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   152
            Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   153
            Assert.areEqual(6, this.data[2]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   154
            Assert.areEqual(7, this.data[3]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   155
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   156
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   157
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   158
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   159
    Y.example.test.ExampleSuite = new Y.Test.Suite("Example Suite");
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   160
    Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   161
    Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   162
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   163
    //create the console
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   164
    (new Y.Test.Console({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   165
        newestOnTop : false,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   166
        filters: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   167
            pass: true,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   168
            fail: true
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   169
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   170
    })).render('#testLogger');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   171
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   172
    Y.Test.Runner.add(Y.example.test.ExampleSuite);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   173
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   174
    //run the tests
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   175
    Y.Test.Runner.run();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   176
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   177
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   178
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   179
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   180
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   181
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   182
<h2 class="first" id="simple-test-example">Simple Test Example</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   183
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   184
<p>This example begins by creating a namespace:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   185
<pre class="code prettyprint">Y.namespace(&quot;example.test&quot;);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   186
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   187
<p>This namespace serves as the core object upon which others will be added (to prevent creating global objects).</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   188
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   189
<h3 id="creating-the-first-testcase">Creating the first TestCase</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   190
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   191
<p>The first step is to create a new <code>Y.Test.Case</code> object called <code>DataTestCase</code>.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   192
  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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   193
<pre class="code prettyprint">Y.example.test.DataTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   194
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   195
    &#x2F;&#x2F;name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   196
    name : &quot;Data Tests&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   197
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   198
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   199
    &#x2F;&#x2F; setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   200
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   201
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   202
    &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   203
     * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   204
     *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   205
    setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   206
        this.data = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   207
            name: &quot;test&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   208
            year: 2007,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   209
            beta: true
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   210
        };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   211
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   212
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   213
    &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   214
     * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   215
     *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   216
    tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   217
        delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   218
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   219
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   220
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   221
    &#x2F;&#x2F; Test methods - names must begin with &quot;test&quot;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   222
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   223
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   224
    testName : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   225
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   226
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   227
        Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   228
        Assert.isString(this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   229
        Assert.areEqual(&quot;test&quot;, this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   230
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   231
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   232
    testYear : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   233
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   234
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   235
        Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   236
        Assert.isNumber(this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   237
        Assert.areEqual(2007, this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   238
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   239
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   240
    testBeta : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   241
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   242
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   243
        Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   244
        Assert.isBoolean(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   245
        Assert.isTrue(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   246
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   247
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   248
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   249
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   250
<p>The object literal passed into the constructor contains a number of different sections. The first section contains the <code>name</code> property,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   251
  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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   252
<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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   253
  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,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   254
  <code>setUp()</code> creates a data object. The <code>tearDown()</code> is responsible for undoing what was done in <code>setUp()</code>. It is
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   255
  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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   256
<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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   257
  to differentiate them from other methods that may be added to the object.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   258
<p>The first test in this object is <code>testName()</code>, which runs
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   259
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   260
  assertions: <code>isObject()</code> on <code>data</code>, <code>isString()</code> on <code>data.name</code> and <code>areEqual()</code> to compare
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   261
  <code>data.name</code> to the expected value, &quot;test&quot;. These assertions are arranged in order from least-specific to most-specific,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   262
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   263
  can't possibly pass unless the first passed. Both <code>isObject()</code> and <code>isString()</code> accept a single argument, which is the value
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   264
  to test (you could optionally include a failure message as a second argument, though this is not required). The <code>areEqual()</code> method
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   265
  expects two arguments, the first being the expected value (&quot;test&quot;) and the second being the actual value (<code>data.name</code>).</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   266
<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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   267
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   268
  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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   269
  assertion instead of <code>areEqual()</code> (though it could also use <code>areEqual(true, this.data.beta)</code>).</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   270
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   271
 <h3 id="creating-the-second-testcase">Creating the second TestCase</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   272
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   273
 <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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   274
   a second <code>Y.Test.Case</code>. This one tests some of the built-in functions of the <code>Array</code> object:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   275
<pre class="code prettyprint">Y.example.test.ArrayTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   276
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   277
    &#x2F;&#x2F;name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   278
    name : &quot;Array Tests&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   279
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   280
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   281
    &#x2F;&#x2F; setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   282
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   283
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   284
    &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   285
     * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   286
     *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   287
    setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   288
        this.data = [0,1,2,3,4]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   289
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   290
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   291
    &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   292
     * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   293
     *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   294
    tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   295
        delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   296
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   297
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   298
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   299
    &#x2F;&#x2F; Test methods - names must begin with &quot;test&quot;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   300
    &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   301
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   302
    testPop : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   303
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   304
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   305
        var value = this.data.pop();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   306
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   307
        Assert.areEqual(4, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   308
        Assert.areEqual(4, value);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   309
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   310
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   311
    testPush : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   312
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   313
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   314
        this.data.push(5);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   315
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   316
        Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   317
        Assert.areEqual(5, this.data[5]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   318
    },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   319
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   320
    testSplice : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   321
        var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   322
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   323
        this.data.splice(2, 1, 6, 7);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   324
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   325
        Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   326
        Assert.areEqual(6, this.data[2]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   327
        Assert.areEqual(7, this.data[3]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   328
    }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   329
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   330
});</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   331
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   332
 <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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   333
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   334
  tests while the <code>tearDown()</code> method destroys the array. The test methods are very simple, testing the <code>pop()</code>, <code>push()</code>,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   335
  and <code>splice()</code> methods. Each test method uses <code>areEqual()</code> exclusively, to show the different ways that it can be used.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   336
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   337
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   338
  changed and that the value is included in the correct location; the <code>testSplice()</code> method tests  <code>splice()</code> by removing one
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   339
  value that's already in the array and inserting two in its place.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   340
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   341
<h3 id="creating-the-testsuite">Creating the TestSuite</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   342
<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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   343
  added to it:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   344
<pre class="code prettyprint">Y.example.test.ExampleSuite = new Y.Test.Suite(&quot;Example Suite&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   345
Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   346
Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   347
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   348
<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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   349
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   350
  not required (one is generated if it's not provided), it is recommended that you select a meaningful name to aid in debugging.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   351
<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>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   352
  method. In this example, the two <code>Y.Test.Case</code> objects created earlier are added to the <code>Y.Test.Suite</code>.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   353
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   354
<h3 id="running-the-tests">Running the tests</h3>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   355
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   356
<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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   357
  components have been loaded:</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   358
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   359
<pre class="code prettyprint">&#x2F;&#x2F;create the console
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   360
(new Y.Test.Console({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   361
    verbose : true,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   362
    newestOnTop : false
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   363
})).render(&#x27;#testLogger&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   364
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   365
Y.Test.Runner.add(Y.example.test.ExampleSuite);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   366
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   367
&#x2F;&#x2F;run the tests
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   368
Y.Test.Runner.run();</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   369
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   370
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   371
<p>Before running the tests, it's necessary to create a <code>Y.Test.Console</code> object to display the results (otherwise the tests would run
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   372
  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
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   373
  <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>,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   374
  this example only adds one for simplicity). The very last step is to call <code>run()</code>, which begins executing the tests in its
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   375
  queue and displays the results in the <code>Y.Test.Console</code>.</p>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   376
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   377
<h2 id="complete-example-source">Complete Example Source</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   378
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   379
<pre class="code prettyprint">&lt;div id=&quot;testLogger&quot;&gt;&lt;&#x2F;div&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   380
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   381
&lt;script&gt;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   382
YUI().use(&#x27;node&#x27;, &#x27;test-console&#x27;, &#x27;test&#x27;, function (Y) {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   383
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   384
    Y.namespace(&quot;example.test&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   385
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   386
    Y.example.test.DataTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   387
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   388
        &#x2F;&#x2F;name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   389
        name : &quot;Data Tests&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   390
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   391
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   392
        &#x2F;&#x2F; setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   393
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   394
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   395
        &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   396
         * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   397
         *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   398
        setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   399
            this.data = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   400
                name: &quot;test&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   401
                year: 2007,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   402
                beta: true
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   403
            };
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   404
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   405
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   406
        &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   407
         * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   408
         *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   409
        tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   410
            delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   411
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   412
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   413
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   414
        &#x2F;&#x2F; Test methods - names must begin with &quot;test&quot;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   415
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   416
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   417
        testName : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   418
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   419
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   420
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   421
            Assert.isString(this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   422
            Assert.areEqual(&quot;test&quot;, this.data.name);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   423
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   424
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   425
        testYear : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   426
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   427
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   428
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   429
            Assert.isNumber(this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   430
            Assert.areEqual(2007, this.data.year);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   431
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   432
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   433
        testBeta : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   434
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   435
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   436
            Assert.isObject(this.data);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   437
            Assert.isBoolean(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   438
            Assert.isTrue(this.data.beta);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   439
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   440
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   441
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   442
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   443
    Y.example.test.ArrayTestCase = new Y.Test.Case({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   444
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   445
        &#x2F;&#x2F;name of the test case - if not provided, one is auto-generated
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   446
        name : &quot;Array Tests&quot;,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   447
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   448
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   449
        &#x2F;&#x2F; setUp and tearDown methods - optional
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   450
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   451
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   452
        &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   453
         * Sets up data that is needed by each test.
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   454
         *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   455
        setUp : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   456
            this.data = [0,1,2,3,4]
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   457
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   458
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   459
        &#x2F;*
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   460
         * Cleans up everything that was created by setUp().
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   461
         *&#x2F;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   462
        tearDown : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   463
            delete this.data;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   464
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   465
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   466
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   467
        &#x2F;&#x2F; Test methods - names must begin with &quot;test&quot;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   468
        &#x2F;&#x2F;---------------------------------------------------------------------
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   469
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   470
        testPop : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   471
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   472
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   473
            var value = this.data.pop();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   474
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   475
            Assert.areEqual(4, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   476
            Assert.areEqual(4, value);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   477
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   478
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   479
        testPush : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   480
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   481
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   482
            this.data.push(5);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   483
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   484
            Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   485
            Assert.areEqual(5, this.data[5]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   486
        },
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   487
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   488
        testSplice : function () {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   489
            var Assert = Y.Assert;
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   490
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   491
            this.data.splice(2, 1, 6, 7);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   492
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   493
            Assert.areEqual(6, this.data.length);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   494
            Assert.areEqual(6, this.data[2]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   495
            Assert.areEqual(7, this.data[3]);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   496
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   497
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   498
    });
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   499
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   500
    Y.example.test.ExampleSuite = new Y.Test.Suite(&quot;Example Suite&quot;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   501
    Y.example.test.ExampleSuite.add(Y.example.test.DataTestCase);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   502
    Y.example.test.ExampleSuite.add(Y.example.test.ArrayTestCase);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   503
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   504
    &#x2F;&#x2F;create the console
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   505
    (new Y.Test.Console({
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   506
        newestOnTop : false,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   507
        filters: {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   508
            pass: true,
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   509
            fail: true
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   510
        }
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   511
    })).render(&#x27;#testLogger&#x27;);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   512
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   513
    Y.Test.Runner.add(Y.example.test.ExampleSuite);
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   514
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   515
    &#x2F;&#x2F;run the tests
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   516
    Y.Test.Runner.run();
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   517
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   518
});
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   519
&lt;&#x2F;script&gt;</pre>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   520
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   521
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   522
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   523
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   524
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   525
        <div class="yui3-u-1-4">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   526
            <div class="sidebar">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   527
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   528
                    <div id="toc" class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   529
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   530
                            <h2 class="no-toc">Table of Contents</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   531
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   532
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   533
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   534
                            <ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   535
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   536
<a href="#simple-test-example">Simple Test Example</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   537
<ul class="toc">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   538
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   539
<a href="#creating-the-first-testcase">Creating the first TestCase</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   540
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   541
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   542
<a href="#creating-the-second-testcase">Creating the second TestCase</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   543
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   544
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   545
<a href="#creating-the-testsuite">Creating the TestSuite</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   546
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   547
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   548
<a href="#running-the-tests">Running the tests</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   549
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   550
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   551
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   552
<li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   553
<a href="#complete-example-source">Complete Example Source</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   554
</li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   555
</ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   556
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   557
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   558
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   559
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   560
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   561
                    <div class="sidebox">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   562
                        <div class="hd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   563
                            <h2 class="no-toc">Examples</h2>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   564
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   565
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   566
                        <div class="bd">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   567
                            <ul class="examples">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   568
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   569
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   570
                                        <li data-description="Demonstrates basic usage of YUI Test for setting up and running tests.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   571
                                            <a href="test-simple-example.html">Simple Testing Example</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   572
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   573
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   574
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   575
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   576
                                        <li data-description="Demonstrates how to use advanced testing features such as defining tests that should fail, tests that should be ignored, and tests that should throw an error.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   577
                                            <a href="test-advanced-test-options.html">Advanced Test Options</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   578
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   579
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   580
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   581
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   582
                                        <li data-description="Demonstrates how to use the ArrayAssert object to test array data.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   583
                                            <a href="test-array-tests.html">Array Processing</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   584
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   585
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   586
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   587
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   588
                                        <li data-description="Demonstrates basic asynchronous tests.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   589
                                            <a href="test-async-test.html">Asynchronous Testing</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   590
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   591
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   592
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   593
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   594
                                        <li data-description="Demonstrates using events with asynchronous tests.">
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   595
                                            <a href="test-async-event-tests.html">Asynchronous Event Testing</a>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   596
                                        </li>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   597
                                    
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   598
                                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   599
                            </ul>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   600
                        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   601
                    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   602
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   603
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   604
                
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   605
            </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   606
        </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   607
    </div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   608
</div>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   609
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   610
<script src="../assets/vendor/prettify/prettify-min.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   611
<script>prettyPrint();</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   612
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   613
<script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   614
YUI.Env.Tests = {
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   615
    examples: [],
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   616
    project: '../assets',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   617
    assets: '../assets/test',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   618
    name: 'test-simple-example',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   619
    title: 'Simple Testing Example',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   620
    newWindow: '',
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   621
    auto:  false 
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   622
};
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   623
YUI.Env.Tests.examples.push('test-simple-example');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   624
YUI.Env.Tests.examples.push('test-advanced-test-options');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   625
YUI.Env.Tests.examples.push('test-array-tests');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   626
YUI.Env.Tests.examples.push('test-async-test');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   627
YUI.Env.Tests.examples.push('test-async-event-tests');
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   628
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   629
</script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   630
<script src="../assets/yui/test-runner.js"></script>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   631
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   632
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   633
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   634
</body>
89ef5ed3c48b Upgrades to yui 3.10.3
gibus
parents:
diff changeset
   635
</html>