Fix mysql column name being ignored on dataType change or new column
being added
Fix mysql column name ignored if index changed
Add column name case on autoupdate test
Fix test case scheme error
Fix describe test
* TEST_ prefix is not used by CI anymore and there for serve no purpose
* Part of overall goal to standardize env var injection to
MODULE_VARNAME (ie. MYSQL_HOST for example) convention
Environment variables set in pretest.js and test/init.js were silently
being converted to Strings. For example, when TEST_MYSQL_USER is
undefined, it's value was automatically converted to the String
'undefined'. This is documented a side effect of assigning values to
process.env. See https://nodejs.org/api/process.html#process_process_env
for more details
Index cardinality is actually a metric that is based on MySQL analyzing
the table contents, so its value here has more to do with whether the
tests are running against a new table, an old table, or whether it has
any data in it.
The Sub_part field is similarly unimportant for the purposes of these
tests since it refers to indexing internals based on data type and
partial indexing.
See: https://dev.mysql.com/doc/refman/5.5/en/show-index.html
Allow the tests to run on ci.strongloop.com using the credentials that
are given there, but translate them to the form that is used on
cis-jenkins, which is actually the correct format.
If no password is given, '+ password' stringifies to 'undefined', which
generates a URL that has 'undefined' as the password instead of leaving
out the password.
Per MySQL docs
(http://dev.mysql.com/doc/refman/5.7/en/date-and-time-types.html):
"MySQL permits you to store a “zero” value of '0000-00-00' as a
“dummy date.” This is in some cases more convenient than using NULL
values, and uses less data and index space. To disallow '0000-00-00',
enable the NO_ZERO_DATE mode.
“Zero” date or time values used through Connector/ODBC are converted
automatically to NULL because ODBC cannot handle such values."
As we are not using Connector/ODBC we need to handle this ourself.
Support for setting collation/charset at the schema level.
Porting of non-running migration test to new test running layout.
Resolves issue #19. Resolves issue #28. Resolves issue #17.
Should allow for changing the types for particular columns (Int, SmallInt, BigInt, Text, Char, Float, etc.).
This seems to work with the current migration test, however use of floats and such in model instances has not been heavily tested.
Likewise, in porting migration the full suite of index migration tests has yet to be ported.
Likewise, issue with dropping columns from a model persists and seems related to `defineProperty` in JDB core choking when used to try and undefine.
All unit tests continue to pass. The code snippets for adding indexes are the declarative versions of the methods used in alterTable(), so the indexes should be consistant with previous declarations/additions.
Should resolve bug #5.
As a side node, also removed the 'UNIQUE' clause from the `id` declaration as it is redundant with the 'PRIMARY KEY' declaration so far as I'm aware and results in what seems to be a second index getting maintained for no reason. (If I'm wrong about this I'd be intrested in the explanation. MySQL does have a lot of oddities.)