Testing improvements (#4863)
* Adds supports-color so spec reporter dont output colors when not supported * Adds babelrc so breakpoints dont jump around in specs * Rename test to avoid duplicated name * Removes unused methods * Better naming for it_exclude
This commit is contained in:
4512
package-lock.json
generated
4512
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -63,7 +63,8 @@
|
||||
"mongodb-runner": "3.6.1",
|
||||
"nodemon": "1.17.5",
|
||||
"nyc": "^12.0.2",
|
||||
"request-promise": "4.2.2"
|
||||
"request-promise": "4.2.2",
|
||||
"supports-color": "^5.4.0"
|
||||
},
|
||||
"scripts": {
|
||||
"dev": "npm run build && node bin/dev",
|
||||
|
||||
14
spec/.babelrc
Normal file
14
spec/.babelrc
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"plugins": [
|
||||
"transform-object-rest-spread"
|
||||
],
|
||||
"presets": [
|
||||
["env", {
|
||||
"targets": {
|
||||
"node": "8"
|
||||
}
|
||||
}]
|
||||
],
|
||||
"sourceMaps": "inline",
|
||||
"retainLines": true
|
||||
}
|
||||
@@ -70,7 +70,7 @@ describe("AdaptableController", ()=>{
|
||||
done();
|
||||
});
|
||||
|
||||
it("should accept an object adapter", (done) => {
|
||||
it("should accept an prototype based object adapter", (done) => {
|
||||
function AGoodAdapter() {}
|
||||
AGoodAdapter.prototype.createFile = function() { };
|
||||
AGoodAdapter.prototype.deleteFile = function() { };
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
"use strict"
|
||||
// Sets up a Parse API server for testing.
|
||||
const SpecReporter = require('jasmine-spec-reporter').SpecReporter;
|
||||
|
||||
const supportsColor = require('supports-color');
|
||||
jasmine.DEFAULT_TIMEOUT_INTERVAL = process.env.PARSE_SERVER_TEST_TIMEOUT || 5000;
|
||||
|
||||
jasmine.getEnv().clearReporters();
|
||||
jasmine.getEnv().addReporter(new SpecReporter());
|
||||
jasmine.getEnv().addReporter(new SpecReporter({ colors: { enabled: supportsColor.stdout }}));
|
||||
|
||||
global.on_db = (db, callback, elseCallback) => {
|
||||
if (process.env.PARSE_SERVER_TEST_DB == db) {
|
||||
@@ -412,11 +412,11 @@ global.jfail = function(err) {
|
||||
global.it_exclude_dbs = excluded => {
|
||||
if (excluded.indexOf(process.env.PARSE_SERVER_TEST_DB) >= 0) {
|
||||
return (name, suite) => {
|
||||
return xit(`[${excluded}] ${name}`, suite);
|
||||
return xit(`[not on ${excluded.join(',')}] ${name}`, suite);
|
||||
};
|
||||
} else {
|
||||
return (name, suite) => {
|
||||
return it(`[${excluded}] ${name}`, suite);
|
||||
return it(`[not on ${excluded.join(',')}] ${name}`, suite);
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,22 +31,6 @@ const MongoClient = mongodb.MongoClient;
|
||||
const ReadPreference = mongodb.ReadPreference;
|
||||
|
||||
const MongoSchemaCollectionName = '_SCHEMA';
|
||||
|
||||
const storageAdapterAllCollections = mongoAdapter => {
|
||||
return mongoAdapter.connect()
|
||||
.then(() => mongoAdapter.database.collections())
|
||||
.then(collections => {
|
||||
return collections.filter(collection => {
|
||||
if (collection.namespace.match(/\.system\./)) {
|
||||
return false;
|
||||
}
|
||||
// TODO: If you have one app with a collection prefix that happens to be a prefix of another
|
||||
// apps prefix, this will go very very badly. We should fix that somehow.
|
||||
return (collection.collectionName.indexOf(mongoAdapter._collectionPrefix) == 0);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
const convertParseSchemaToMongoSchema = ({...schema}) => {
|
||||
delete schema.fields._rperm;
|
||||
delete schema.fields._wperm;
|
||||
|
||||
@@ -31,7 +31,6 @@ export interface StorageAdapter {
|
||||
createClass(className: string, schema: SchemaType): Promise<void>;
|
||||
addFieldIfNotExists(className: string, fieldName: string, type: any): Promise<void>;
|
||||
deleteClass(className: string): Promise<void>;
|
||||
deleteAllClasses(): Promise<void>;
|
||||
dropDatabase(): Promise<void>;
|
||||
deleteFields(className: string, schema: SchemaType, fieldNames: Array<string>): Promise<void>;
|
||||
getAllClasses(): Promise<StorageClass[]>;
|
||||
|
||||
Reference in New Issue
Block a user