My menu project built with AngularJS is quite complex, and I need help on testing it. The testing framework being used is Jasmine and Karma. Most of the resources available online only cover basic directives and controllers.
You can view the project running on Plunker: http://plnkr.co/edit/6bgf5E6oP7v11I4i9SVz?p=preview
I'm unsure where to start with the testing process, so any assistance would be greatly appreciated.
Here is a snippet of the code:
HTML
<jl-menu data-ng-class="menuState()" jl-scrollable-parent="#wrap" jl-fixed-offset-element="#wrap" jl-fixed-offset-y="{{menuOffset()}}" jl-scroll-offset="0" class="menu_wrap">
<jl-menu-range jl-from-element="#section1" jl-from-offset="0" jl-from-attr="top" jl-to-element="#section3" jl-to-offset="0" jl-to-attr="top"></jl-menu-range>
<jl-menu-range jl-from-element="#section4" jl-from-offset="0" jl-from-attr="top" jl-to-element="#section5" jl-to-offset="0" jl-to-attr="top"></jl-menu-range>
<jl-menu-range jl-from-element="#section6" jl-from-offset="0" jl-from-attr="top" jl-to-element="#section6" jl-to-offset="0" jl-to-attr="bottom"></jl-menu-range>
<ul class="menu">
<li data-ng-class="menuItemState('section1')">
<a href="#section1" jl-scroll-to="section1" jl-scrollable-parent="#wrap">Section 1</a>
<ul class="submenu" data-ng-class="submenuState('section1')">
<li data-ng-class="menuItemState('section1_1')">
<a href="#section1_1" jl-scroll-to="section1_1" jl-scrollable-parent="#wrap">Section1, 1</a>
</li>
<li data-ng-class="menuItemState('section1_2')">
<a href="#section1_2" jl-scroll-to="section1_2" jl-scrollable-parent="#wrap">Section1, 2</a>
</li>
<li data-ng-class="menuItemState('section1_3')">
<a href="#section1_3" jl-scroll-to="section1_3" jl-scrollable-parent="#wrap">Section1, 3</a>
</li>
</ul>
</li>
<!-- Rest of the HTML code -->
</ul>
</jl-menu>
Javascript
<!-- Javascript code -->