I've been trying out the AngularJS e2e tests and am getting stuck determining whether or not a checkbox is checked.
I used the end to end test for the checkbox input as a sample (see the End to end test tab in the Example).
Html snippet:
Value1: <input type="checkbox" ng-model="value1"> <br/>
Controller snippet:
function Ctrl($scope) {
$scope.value1 = true;
}
Here is what I tried:
1) expect(binding('value1')).toEqual('true');
This works in the sample end to end test as long as value1
is displayed on screen with {{value1}}
. If you test this locally and remove `{{value1}} the binding test fails. In most of my real-world examples I am not displaying the checkbox value on the screen anywhere.
2) expect(input('value1').val()).toEqual('true');
The value will always default to on
and is not related to whether or not the checkbox is in a checked state (taken from this post).
Note: It looks like the Angular E2E testing will be replaced with Protractor in the future (see the docs)