When a new album is created in the store a notification is posted to all the connected browsers using SignalR.
Also added automation for the signalR hubs.
There is still some UI formatting improvements required in the way new arrivals are displayed. Will fix it in future checkins.
1. This contains the new manage controller with a bunch of features like 2 factor auth
Some of the features are not enabled yet. But this is to set a baseline with update3 templates.
Automation to come up in future as more identity extensions are available.
I'm starting to see that tests start running too soon before the application started. Increasing the wait time to a bigger number.
It will increase the test runtime of each selfhost variation by a couple more seconds, but it will increase the reliability.
A couple of selfhost variations are failing on some of the new CI machines. While trying to reproduce I see that the klr.exe processes are lauching fine. But the tests fail for a couple of self-host variations. Only suspicion is this time out as the client gets a socket exception. It is possible that client is making a request before the server is ready.
This does not include the deployment helper on mono. So the test needs to point to a statically deployed application url to run.
There are some bugs in mono Httpclient like in case of 302's RequestMessage's Uri not modified, cookies not cleared in cookie container etc. I will file bugs in mono on those and this is a work around until then.
There is still more work and refactoring. This is a first step.
Removing the Layout page reference from individual cshtml files.
Added some tests to verify layout getting rendered in every view.
Added a couple of verifications to verify that title of the page is set appropriately.
Adding some delay for the selfhost tests. With the recent change of merging the dbs selfhost based tests start even before the data is populated into the db & application start. Adding a slight delay to allow the setup finish.
And fixing a test bug that was not surfacing. Was checking with a fixed album id. This worked before as the id created was always 453.
Value of the KRE_DEFAULT_LIB of the 'k test' process was flowing into Helios resulting in an exception. As the test is always running on desktop clr, the value of this variable always points to the desktop KRE path resulting in the exception. This fix will fix the issue.
It executes a set of scenarios:
1. Launches the app in Helios and navigates to the home page and verifies
2. Make a request to a protected resource and verifies that request is redirected to the login page
3. Registers a user with a dynamically generated user name and verifies the user is created and logged in by verifying the cookies and display name in the home page.
4. Go back to the StoreManager controller which requires a specific permission and verifies that still we are being redirected to Login page.
5. Logoff of the current user session and verify the user is logged off and cookie cleared.
6. Login this time with Administrator user who has permission to manage store and verify successfully logged in
7. Verify that this time the user can access the StoreManager controller
8. Create an album and verify that album is successfully created.
9. Logout of the app and verify.