Skip to content
This repository has been archived by the owner on Dec 21, 2021. It is now read-only.

Commit

Permalink
Merge branch 'pr-363'
Browse files Browse the repository at this point in the history
  • Loading branch information
eduardolundgren committed Dec 3, 2013
2 parents 46661ef + 457ff0c commit 47c4043
Show file tree
Hide file tree
Showing 3 changed files with 125 additions and 26 deletions.
5 changes: 5 additions & 0 deletions src/aui-tree/HISTORY.md
@@ -1,2 +1,7 @@
aui-tree
========

@VERSION@
------

* #AUI-1044 - In aui-tree-node Add option to prevent selecting all child nodes in radio and task.
2 changes: 1 addition & 1 deletion src/aui-tree/js/aui-tree-node.js
Expand Up @@ -1764,7 +1764,7 @@ var TreeNodeRadio = A.Component.create({
}
},

EXTENDS: A.TreeNodeTask,
EXTENDS: A.TreeNodeCheck,

prototype: {

Expand Down
144 changes: 119 additions & 25 deletions src/aui-tree/tests/unit/js/tests.js
Expand Up @@ -49,52 +49,71 @@ YUI.add('module-tests', function(Y) {
},

'getNodeById() should return a valid TreeNode': function() {
var tree = createNewTreeView();
var childNode,
tree;

var childNode = tree.getNodeById('one');
tree = createNewTreeView();

childNode = tree.getNodeById('one');

Y.Assert.isInstanceOf(Y.TreeNode, childNode, 'childNode should be an instance of Y.TreeNode.');
},

'getNodeById() should not return a valid TreeNode': function() {
var tree = createNewTreeView();
var childNode,
tree;

tree = createNewTreeView();

var childNode = tree.getNodeById('bogey');
childNode = tree.getNodeById('bogey');

Y.Assert.isUndefined(childNode, 'childNode should be undefined.');
},

'TreeNode should have children': function() {
var tree = createNewTreeView();
var tree,
node;

tree = createNewTreeView();

var node = tree.getNodeById('one');
node = tree.getNodeById('one');

Y.Assert.areSame(4, node.childrenLength, 'node.childrenLength should return 4.');
},

'TreeNode should not have children': function() {
var tree = createNewTreeView();
var tree,
node;

var node = tree.getNodeById('two');
tree = createNewTreeView();

node = tree.getNodeById('two');

Y.Assert.areSame(0, node.childrenLength, 'node.childrenLength should return 0.');
},

'appendChild() should regester the TreeNode in the Parent TreeNode and Owner TreeView index attribute': function() {
var treeView = new Y.TreeView();
'appendChild() should register the TreeNode in the Parent TreeNode and Owner TreeView index attribute': function() {
var childTreeNode,
rootTreeNode,
rootTreeNodeIndex,
treeView,
treeViewIndex;

var childTreeNode = new Y.TreeNode({
treeView = new Y.TreeView();

childTreeNode = new Y.TreeNode({
id: 'child'
});
var rootTreeNode = new Y.TreeNode({

rootTreeNode = new Y.TreeNode({
id: 'root'
});

treeView.appendChild(rootTreeNode);
rootTreeNode.appendChild(childTreeNode);

var treeViewIndex = treeView.get("index");
var rootTreeNodeIndex = rootTreeNode.get("index");
treeViewIndex = treeView.get('index');
rootTreeNodeIndex = rootTreeNode.get('index');

Y.Assert.isTrue(
treeViewIndex.hasOwnProperty('root'),
Expand All @@ -108,9 +127,12 @@ YUI.add('module-tests', function(Y) {
},

'removeChild() should remove child TreeNode': function() {
var tree = createNewTreeView();
var node,
tree;

tree = createNewTreeView();

var node = tree.getNodeById('two');
node = tree.getNodeById('two');

tree.removeChild(node);

Expand All @@ -124,9 +146,12 @@ YUI.add('module-tests', function(Y) {
},

'removeChild() should not remove child TreeNode': function() {
var tree = createNewTreeView();
var node,
tree;

tree = createNewTreeView();

var node = tree.getNodeById('bogey');
node = tree.getNodeById('bogey');

tree.removeChild(node);

Expand All @@ -136,20 +161,28 @@ YUI.add('module-tests', function(Y) {
},

'isRegistered() should find TreeNode': function() {
var tree = createNewTreeView();
var node,
tree;

tree = createNewTreeView();

var node = tree.getNodeById('two');
node = tree.getNodeById('two');

Y.Assert.isTrue(tree.isRegistered(node), 'TreeNode should be registered in TreeView');
},

'isRegistered() should find child TreeNode': function() {
var treeView = new Y.TreeView();
var childTreeNode,
rootTreeNode,
treeView;

treeView = new Y.TreeView();

var childTreeNode = new Y.TreeNode({
childTreeNode = new Y.TreeNode({
id: 'child'
});
var rootTreeNode = new Y.TreeNode({

rootTreeNode = new Y.TreeNode({
id: 'root'
});

Expand All @@ -165,11 +198,72 @@ YUI.add('module-tests', function(Y) {
},

'isRegistered() should not find TreeNode': function() {
var tree = createNewTreeView();
var node,
tree;

tree = createNewTreeView();

var node = new Y.TreeNode();
node = new Y.TreeNode();

Y.Assert.isFalse(tree.isRegistered(node), 'TreeNode should be registered in TreeView');
},

'TreeNodeRadio should only have one treeNode selected': function() {
var childTreeNode,
rootTreeNode,
treeView;

treeView = new Y.TreeView();

childTreeNode = new Y.TreeNodeRadio({
id: 'one'
});

rootTreeNode = new Y.TreeNodeRadio({
id: 'root'
});

treeView.appendChild(rootTreeNode);
rootTreeNode.appendChild(childTreeNode);

rootTreeNode.check();

Y.Assert.isTrue(
rootTreeNode.isChecked(),
'rootTreeNode should be checked.');

Y.Assert.isFalse(
childTreeNode.isChecked(),
'childTreeNode should not be checked.');
},

'TreeNodeTask should select all child treeNode': function() {
var childTreeNode,
rootTreeNode,
treeView;

treeView = new Y.TreeView();

childTreeNode = new Y.TreeNodeTask({
id: 'one'
});

rootTreeNode = new Y.TreeNodeTask({
id: 'root'
});

treeView.appendChild(rootTreeNode);
rootTreeNode.appendChild(childTreeNode);

rootTreeNode.check();

Y.Assert.isTrue(
rootTreeNode.isChecked(),
'rootTreeNode should be checked.');

Y.Assert.isTrue(
childTreeNode.isChecked(),
'childTreeNode should be checked.');
}
}));

Expand Down

0 comments on commit 47c4043

Please sign in to comment.