Added the timeout option to the Mocha grunt task; set to 10000.
Removed the individual test suite timeouts, for all server tests.
Also, added global timeout for Mocha gulp task.
Added an options object to the database seed configuration. Currently,
the only option implemented is `logResults`; set using the seedDB env
config
options (default to "true").
Modified the definition of the env config for seedDB. It's now an
object, with
options.
Setting the logResults option is set to `false` in the core
configuration server test suite.
Also, fixed an issue with how env configs were reading the seedDB
setting from the env variables. Previously, the config was getting set
by
looking for merely the existence of the env variable (MONGO_SEED).
However,
if this setting existed but was set to "false", the seedDB would be
turned on.
Added the SeedDB user details to the env config, and seedDB options.
Added tests to the core server config test suite
should have seedDB configuration set for "regular" user
should have seedDB configuration set for admin user
should seed admin, and "regular" user accounts when NODE_ENV is set to
"test" when they already exist
should ONLY seed admin user account when NODE_ENV is set to "production"
with custom admin
should seed admin, and "regular" user accounts when NODE_ENV is set to
"test" with custom options
should NOT seed admin user account if it already exists when NODE_ENV is
set to "production"
should NOT seed "regular" user account if missing email when NODE_ENV
set to "test"
Added support for environment variables to seedDB env configs; currently
only supporting username & email.
Refactored how the SeedDB rejects were being handled
Added a timeout of 10000 ms to each server test file. This is an attempt
to solve the timeout issues that we're experiencing with the Mocha
tests. Especially, this is hoping to address the build fails that are
caused by such timeouts.
Issue is described in https://github.com/meanjs/mean/issues/955
Fixes the issue with the previous state not being recorded, when the
unauthenticated user is redirected to the signin state, when trying to
access a restricted route.
Added a function that stores the provided state & state params, in the
$state.previous object. This has been implemented in the
$stateChangeSuccess event, and the callback of the $state.go transition
when the user is not allowed to access the requested route.
Two different strategies are adopted, one for when the user authenticates locally and the other through providers. When authenticating locally, the signin function in the client controller redirects to the previous state (storing and using a state name) after successful login. When authenticating through a provider, the first call to provider stores the previous URL (not state, URL) in the session. Then, when provider actually calls the authentication callback, session redirect_to path is used for redirecting user.
Updated the Socket client service, with a connect() method. Moved state
redirect out of from Socket service. Added the Authentication.user
check to the Chat client controller, and added a check to make sure the
Socket client service is connected to the server; if not, then connect
using the new connect() method.
Had to do a hard reset from 0.4.0 due to conflicts when merging and
pushing to remote.
A state parameter was added for the routes that require user authentication. Now, everytime a statechange occurs, the destination state is checked and user is redirected to signin page if necessary. Note the state parameter is added within `data`, so that nested states can inherent its value.