object.html revision 0771d781138a507b3e657573703f511291640bf3
0N/A<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
553N/A<html>
0N/A<head>
0N/A<title>YUI Object Tests</title>
0N/A</head>
0N/A
0N/A<body class="yui-skin-sam">
0N/A<h1>Object Tests</h1>
0N/A<p><input type="button" value="Run Tests" id="btnRun" disabled="true" /></p>
0N/A
0N/A<script type="text/javascript" src="/build/yui/yui.js"></script>
0N/A<script type="text/javascript">
0N/A
0N/A(function() {
0N/A YUI({
0N/A base: "/build/",
0N/A filter: "debug",
0N/A logExclude: {
553N/A attribute: true,
553N/A dom: true,
553N/A node: true,
0N/A event: true,
0N/A base: true,
0N/A widget: true,
0N/A selector: true
0N/A },
0N/A useConsole: true
0N/A }).use("dump", "test", "console", "event-custom", function(Y) {
288N/A
0N/A var button = Y.get('#btnRun');
0N/A
0N/A // Set up the page
0N/A button.set("disabled", false);
0N/A Y.on("click", function() {
0N/A Y.Test.Runner.run();
0N/A }, button);
0N/A
0N/A // var myConsole = new Y.Console().render();
0N/A
0N/A var o = {
0N/A a1: {
0N/A a2: {
0N/A a3: 'a'
0N/A }
0N/A },
0N/A b1: {
0N/A b2: 'b'
0N/A },
0N/A c1: 'c'
0N/A }
0N/A
0N/A var testObject = new Y.Test.Case({
0N/A name: "Object tests",
0N/A
0N/A 'getValue deep path test': function() {
0N/A Y.Assert.areEqual('c', Y.Object.getValue(o, 'c1'));
0N/A Y.Assert.areEqual('a', Y.Object.getValue(o, ['a1', 'a2', 'a3']));
0N/A Y.Assert.areEqual(undefined, Y.Object.getValue(o, ['b1', 'b2', 'b3']));
0N/A },
0N/A
0N/A 'setValue deep path test': function() {
0N/A
0N/A Y.Object.setValue(o, 'c1', 'changed_c');
0N/A Y.Object.setValue(o, ['a1', 'a2', 'a3'], 'changed_a');
0N/A Y.Object.setValue(o, ['b1', 'b2', 'b3'], 'changed_b');
0N/A
Y.Assert.areEqual('changed_c', Y.Object.getValue(o, 'c1'));
Y.Assert.areEqual('changed_a', Y.Object.getValue(o, ['a1', 'a2', 'a3']));
Y.Assert.areEqual(undefined, Y.Object.getValue(o, ['b1', 'b2', 'b3']));
}
});
Y.Test.Runner.add(testObject);
Y.Test.Runner.run();
});
})();
</script>
</body>
</html>