AngularJS Watch Pristine/Validation

HTML

<div ng-controller="pristineCheck">
    <form name="myForm">
        <input type="text" id="myInput" ng-model="myText">
            <div>Form Valid: {{myForm.$valid}}</div>
            <div>Form Pristine: {{myForm.$pristine}}</div>
            <div>Form Dirty: {{myForm.$dirty}}</div>
    </form>
</div>

JavaScript

angular.module('app', [])
    .controller('pristineCheck', ['$scope',
        function($scope){
            $scope.myText = "Hello World";
            
            $scope.$watch('myText', function(newValue, oldValue){
                alert("myText changed from '" + oldValue + "' to '" + newValue +"'");
            });
            
            $scope.$watch('myForm.$pristine', function(newValue, oldValue){
                alert("pristine changed from '" + oldValue + "' to '" + newValue +"'");
            });
            
            $scope.$watch('myForm.$dirty', function(newValue, oldValue){
                alert("dirty changed from '" + oldValue + "' to '" + newValue +"'");
            });
        }]);