@@ -3,6 +3,7 @@ import { shallow } from 'enzyme';
33import { assert } from 'chai' ;
44
55import CheckboxTree from '../src/js/Tree' ;
6+ import TreeNode from '../src/js/TreeNode' ;
67
78describe ( '<CheckboxTree />' , ( ) => {
89 describe ( 'component' , ( ) => {
@@ -20,5 +21,71 @@ describe('<CheckboxTree />', () => {
2021 assert . isTrue ( wrapper . find ( '.react-checkbox-tree' ) . exists ( ) ) ;
2122 } ) ;
2223 } ) ;
24+
25+ describe ( 'nodes' , ( ) => {
26+ it ( 'should render the node\'s label' , ( ) => {
27+ const wrapper = shallow (
28+ < CheckboxTree
29+ nodes = { [ { value : 'jupiter' , label : 'Jupiter' } ] }
30+ /> ,
31+ ) ;
32+
33+ assert . equal ( 'Jupiter' , wrapper . find ( TreeNode ) . prop ( 'label' ) ) ;
34+ } ) ;
35+
36+ it ( 'should render the node\'s legacy label' , ( ) => {
37+ const wrapper = shallow (
38+ < CheckboxTree
39+ nodes = { [ { value : 'jupiter' , title : 'Jupiter' } ] }
40+ /> ,
41+ ) ;
42+
43+ assert . equal ( 'Jupiter' , wrapper . find ( TreeNode ) . prop ( 'label' ) ) ;
44+ } ) ;
45+
46+ it ( 'should render the node\'s value' , ( ) => {
47+ const wrapper = shallow (
48+ < CheckboxTree
49+ nodes = { [ { value : 'jupiter' , title : 'Jupiter' } ] }
50+ /> ,
51+ ) ;
52+
53+ assert . equal ( 'jupiter' , wrapper . find ( TreeNode ) . prop ( 'value' ) ) ;
54+ } ) ;
55+
56+ it ( 'should render multiple nodes' , ( ) => {
57+ const wrapper = shallow (
58+ < CheckboxTree
59+ nodes = { [
60+ { value : 'jupiter' , title : 'Jupiter' } ,
61+ { value : 'saturn' , title : 'Saturn' } ,
62+ ] }
63+ /> ,
64+ ) ;
65+
66+ assert . equal ( 'jupiter' , wrapper . find ( TreeNode ) . at ( 0 ) . prop ( 'value' ) ) ;
67+ assert . equal ( 'saturn' , wrapper . find ( TreeNode ) . at ( 1 ) . prop ( 'value' ) ) ;
68+ } ) ;
69+
70+ it ( 'should render node children' , ( ) => {
71+ const wrapper = shallow (
72+ < CheckboxTree
73+ nodes = { [
74+ {
75+ value : 'jupiter' ,
76+ title : 'Jupiter' ,
77+ children : [
78+ { value : 'europa' , label : 'Europa' } ,
79+ ] ,
80+ } ,
81+ ] }
82+ /> ,
83+ ) ;
84+
85+ const { value, label } = wrapper . find ( TreeNode ) . prop ( 'rawChildren' ) [ 0 ] ;
86+
87+ assert . deepEqual ( { value : 'europa' , label : 'Europa' } , { value, label } ) ;
88+ } ) ;
89+ } ) ;
2390} ) ;
2491
0 commit comments