src/cm/media/js/lib/yui/yui3.0.0/tests/oop/tests/oop.html
author gibus
Mon, 21 May 2012 16:50:42 +0200
changeset 439 8994d24e4b2f
parent 0 40c8f766c9b8
permissions -rw-r--r--
Reverts to changeset 435, and just add {% csrf_token %} to template forgot_pw.html, since CSRF protection seems to be only here (surely because of django.contrib.auth.views).
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     1
<!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
     2
<html>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     3
<head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     4
<title>YUI OOP Tests</title>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     5
</head>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     6
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     7
<body class="yui-skin-sam">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     8
<h1 id="header1">OOP Tests</h1>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
     9
<p><input type="button" value="Run Tests" id="btnRun" disabled="true" /></p>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    10
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    11
<script type="text/javascript" src="../../../build/yui/yui.js"></script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    12
<script type="text/javascript">
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    13
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    14
(function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    15
    YUI({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    16
        base: "../../../build/",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    17
        filter: "debug",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    18
        useConsole: true,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    19
        // logInclude: ['event', 'test']
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    20
        //logExclude: ['Dom', 'Selector', 'Node', 'attribute']
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    21
        logExclude: {Dom:true, Selector:true, Node:true, attribute:true, event:true, base:true}
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    22
    }).use("dump", "test", "console", function(Y) {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    23
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    24
        var button = Y.get('#btnRun'),
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    25
            Assert = Y.Assert,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    26
            ObjectAssert = Y.ObjectAssert;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    27
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    28
        // Set up the page
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    29
        button.set("disabled", false);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    30
        Y.on("click", function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    31
            Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    32
        }, button);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    33
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    34
        // var myConsole = new Y.Console().render();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    35
 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    36
        var testOOP= new Y.Test.Case({
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    37
            name: "OOP tests",
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    38
        
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    39
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    40
            testExtend: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    41
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    42
                var firedbase = false;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    43
                var firedextended = false;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    44
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    45
                var Base = function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    46
                    Y.log('Base constructor executed');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    47
                    arguments.callee.superclass.constructor.apply(this, arguments);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    48
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    49
                    // bind by string in order to allow the subclass
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    50
                    this.on('testStringFn', Y.bind('base', this));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    51
                };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    52
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    53
                Y.extend(Base, Y.EventTarget, {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    54
                    base: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    55
                        Y.log('base function');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    56
                        firedbase = true;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    57
                    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    58
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    59
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    60
                var Extended = function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    61
                    Y.log('Extended constructor executed');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    62
                    arguments.callee.superclass.constructor.apply(this, arguments);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    63
                };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    64
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    65
                Y.extend(Extended, Base, {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    66
                    base: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    67
                        Y.log('extended function');
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    68
                        firedextended = true;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    69
                    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    70
                });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    71
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    72
                var b = new Extended();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    73
                b.fire('testStringFn', 1, 2);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    74
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    75
                Y.Assert.isFalse(firedbase);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    76
                Y.Assert.isTrue(firedextended);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    77
            },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    78
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    79
            test_merge: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    80
                var o1 = { one: "one" }, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    81
                    o2 = { two: "two" },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    82
                    o3 = { two: "twofromthree", three: "three" },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    83
                    o4 = { one: "one", two: "twofromthree", three: "three" }, 
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    84
                    o123 = Y.merge(o1, o2, o3);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    85
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    86
                ObjectAssert.areEqual(o123, o4);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    87
                Assert.areEqual(o123.two, o4.two);
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
            test_mix: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    91
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    92
                var a = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    93
                    'bool' : false,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    94
                    'num'  : 0,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    95
                    'nul' : null,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    96
                    'undef': undefined,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    97
                    'T'    : 'blabber'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    98
                };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
    99
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   100
                var b = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   101
                    'bool' : 'oops',
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   102
                    'num'  : 'oops',
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   103
                    'nul' : 'oops',
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   104
                    'undef': 'oops',
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   105
                    'T'    : 'oops'
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
                Y.mix(a, b, false);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   109
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   110
                Assert.isFalse((a.bool === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   111
                Assert.isFalse((a.num === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   112
                Assert.isFalse((a.nul === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   113
                Assert.isFalse((a.undef === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   114
                Assert.isFalse((a.T === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   115
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   116
                Y.mix(a, b, true);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   117
                Assert.isTrue((a.bool === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   118
                Assert.isTrue((a.num === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   119
                Assert.isTrue((a.nul === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   120
                Assert.isTrue((a.undef === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   121
                Assert.isTrue((a.T === 'oops'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   122
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
            test_clone: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   126
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   127
                var a = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   128
                    'bool' : false,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   129
                    'num'  : 0,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   130
                    'nul' : null,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   131
                    'undef': undefined,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   132
                    'T'    : 'blabber'
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   133
                };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   134
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   135
                Assert.isTrue((a.T === 'blabber'));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   136
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   137
                var b = Y.clone(a);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   138
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   139
                var c = function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   140
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   141
                    var _c = 3;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   142
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   143
                    return {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   144
                        a: 1,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   145
                        b: 2,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   146
                        c: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   147
                            return _c;
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   148
                        }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   149
                    }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   150
                }();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   151
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   152
                var d = Y.clone(c);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   153
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   154
                Assert.isTrue((d.a === 1));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   155
                Assert.isTrue((d.c() === 3));
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   156
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   157
            },
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   158
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   159
            test_clone_node: function() {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   160
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   161
                var a = {
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   162
                    node: Y.one('#header1'),
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   163
                    y: Y,
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   164
                    el: document.getElementById('header1')
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   165
                };
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   166
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   167
                var b = Y.clone(a);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   168
                b.node.foo = 'bar';
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   169
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   170
                Assert.isFalse(b.node.foo === a.node.foo);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   171
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   172
            }
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   173
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   174
        });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   175
            
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   176
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   177
        Y.Test.Runner.add(testOOP);
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   178
        Y.Test.Runner.run();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   179
    });
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   180
})();
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   181
</script>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   182
</body>
40c8f766c9b8 import from internal svn r 4007
raph
parents:
diff changeset
   183
</html>