What do you get exactly in the print ?
The problem may be with simulator : it stores the authorizations.
You can reset them:
The print returns:
granted: false, error: nil
( I had to change the print to print("granted: \(granted), error: \(error)") )
And I followed the link to reset the Sim with the same result. The app starts with no request for authorization and does not generate Notifications.
When I run on the Device (Watch Series2, iPhone6) after uninstalling the app, the print returns
granted: true, error: nil
without prompting for authorization and generates Notifications correctly.
I remember that on earlier builds (earlier this month, I think) it would prompt for authoriztion, I don't precicely recall when it stopped prompting.
P.S. The link is now obsolete'ish as the Xcode Menu option is "Erase All Content and Settings...".