Skip to content

Commit 0426e09

Browse files
committed
build: move test files to src/__tests__ in example apps
- Source files are compiled from `src/{foo}` to `dist/{foo}`, the same pattern is applied to test files too. - Both TypeScript sources and JavaScript output are stored in the same path relative to project root. This makes it much easier to refer to test fixtures. This is a follow-up for 066d525.
1 parent 0710055 commit 0426e09

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+68
-71
lines changed

examples/hello-world/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
"node": ">=8.9"
88
},
99
"scripts": {
10-
"acceptance": "lb-mocha \"dist/test/acceptance/**/*.js\"",
10+
"acceptance": "lb-mocha \"dist/__tests__/acceptance/**/*.js\"",
1111
"build:apidocs": "lb-apidocs",
1212
"build": "lb-tsc es2017 --outDir dist",
1313
"build:watch": "lb-tsc es2017 --outDir dist --watch",
@@ -21,9 +21,9 @@
2121
"tslint": "lb-tslint",
2222
"tslint:fix": "npm run tslint -- --fix",
2323
"pretest": "npm run clean && npm run build",
24-
"test": "lb-mocha --allow-console-logs \"dist/test\"",
24+
"test": "lb-mocha --allow-console-logs \"dist/__tests__/**/*.js\"",
2525
"posttest": "npm run lint",
26-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
26+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
2727
"prestart": "npm run build",
2828
"start": "node ."
2929
},

examples/hello-world/test/acceptance/application.acceptance.ts renamed to examples/hello-world/src/__tests__/acceptance/application.acceptance.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import {
99
expect,
1010
givenHttpServerConfig,
1111
} from '@loopback/testlab';
12-
import {HelloWorldApplication} from '../../src/application';
12+
import {HelloWorldApplication} from '../../application';
1313

1414
describe('Application', () => {
1515
let app: HelloWorldApplication;

examples/hello-world/tsconfig.build.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"$schema": "http://json.schemastore.org/tsconfig",
33
"extends": "@loopback/build/config/tsconfig.common.json",
44
"compilerOptions": {
5-
"rootDir": "."
5+
"rootDir": "src"
66
},
7-
"include": ["index.ts", "src", "test"]
7+
"include": ["src"]
88
}

examples/log-extension/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,9 @@
1919
"tslint": "lb-tslint",
2020
"tslint:fix": "npm run tslint -- --fix",
2121
"pretest": "npm run clean && npm run build",
22-
"test": "lb-mocha \"dist/test/unit/**/*.js\" \"dist/test/acceptance/**/*.js\"",
22+
"test": "lb-mocha \"dist/__tests__/**/*.js\"",
2323
"posttest": "npm run lint",
24-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
24+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
2525
"verify": "npm pack && tar xf *example-log-extension*.tgz && tree package && npm run clean"
2626
},
2727
"repository": {

examples/log-extension/tsconfig.build.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"$schema": "http://json.schemastore.org/tsconfig",
33
"extends": "@loopback/build/config/tsconfig.common.json",
44
"compilerOptions": {
5-
"rootDir": "."
5+
"rootDir": "src"
66
},
7-
"include": ["index.ts", "src", "test"]
7+
"include": ["src"]
88
}

examples/rpc-server/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@
2222
"tslint": "lb-tslint",
2323
"tslint:fix": "npm run tslint -- --fix",
2424
"pretest": "npm run clean && npm run build",
25-
"test": "lb-mocha dist/test",
25+
"test": "lb-mocha dist/__tests__/**/*.js",
2626
"posttest": "npm run lint",
27-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
27+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
2828
"prestart": "npm run build",
2929
"start": "node ."
3030
},

examples/rpc-server/test/unit/controllers/greet.controller.unit.ts renamed to examples/rpc-server/src/__tests__/unit/controllers/greet.controller.unit.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// This file is licensed under the MIT License.
44
// License text available at https://opensource.org/licenses/MIT
55

6-
import {GreetController} from '../../../src/controllers';
6+
import {GreetController} from '../../../controllers';
77
import {expect} from '@loopback/testlab';
88

99
describe('greet.controller', () => {

examples/rpc-server/test/unit/rpc.router.unit.ts renamed to examples/rpc-server/src/__tests__/unit/rpc.router.unit.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
// License text available at https://opensource.org/licenses/MIT
55

66
import * as express from 'express';
7-
import {RPCServer} from '../../src/rpc.server';
8-
import {routeHandler} from '../../src/rpc.router';
7+
import {RPCServer} from '../../rpc.server';
8+
import {routeHandler} from '../../rpc.router';
99
import {expect, sinon} from '@loopback/testlab';
1010

1111
describe('rpcRouter', () => {

examples/soap-calculator/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
"tslint": "lb-tslint",
2727
"tslint:fix": "npm run tslint -- --fix",
2828
"pretest": "npm run clean && npm run build",
29-
"test": "lb-mocha \"dist/test\"",
29+
"test": "lb-mocha \"dist/__tests__/**/*.js\"",
3030
"posttest": "npm run lint",
31-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
31+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
3232
"prestart": "npm run build",
3333
"start": "node ."
3434
},

examples/soap-calculator/test/acceptance/application.acceptance.ts renamed to examples/soap-calculator/src/__tests__/acceptance/application.acceptance.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import {Client, createRestAppClient, expect} from '@loopback/testlab';
2-
import {SoapCalculatorApplication} from '../../src/application';
2+
import {SoapCalculatorApplication} from '../../application';
33

44
describe('Application', function() {
55
let app: SoapCalculatorApplication;

examples/soap-calculator/test/helpers.ts renamed to examples/soap-calculator/src/__tests__/helpers.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {CalculatorDataSource} from '../src/datasources/calculator.datasource';
1+
import {CalculatorDataSource} from '../datasources/calculator.datasource';
22

33
export async function givenAConnectedDataSource(): Promise<
44
CalculatorDataSource

examples/soap-calculator/test/integration/services/calculator.service.integration.ts renamed to examples/soap-calculator/src/__tests__/integration/services/calculator.service.integration.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import {
22
CalculatorService,
33
CalculatorParameters,
4-
} from '../../../src/services/calculator.service';
5-
import {CalculatorServiceProvider} from '../../../src/services/calculator.service';
4+
} from '../../../services/calculator.service';
5+
import {CalculatorServiceProvider} from '../../../services/calculator.service';
66
import {givenAConnectedDataSource} from '../../helpers';
77

88
import {expect} from '@loopback/testlab';

examples/soap-calculator/src/application.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ export class SoapCalculatorApplication extends BootMixin(
1717
this.sequence(MySequence);
1818

1919
// Set up default home page
20-
this.static('/', path.join(__dirname, '../../public'));
20+
this.static('/', path.join(__dirname, '../public'));
2121

2222
this.component(RestExplorerComponent);
2323

examples/soap-calculator/tsconfig.build.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"$schema": "http://json.schemastore.org/tsconfig",
33
"extends": "@loopback/build/config/tsconfig.common.json",
44
"compilerOptions": {
5-
"rootDir": "."
5+
"rootDir": "src"
66
},
7-
"include": ["index.ts", "src", "test"]
7+
"include": ["src"]
88
}

examples/todo-list/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"tslint": "lb-tslint",
2020
"tslint:fix": "npm run tslint -- --fix",
2121
"pretest": "npm run build",
22-
"test": "lb-mocha \"dist/test/*/**/*.js\"",
23-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
22+
"test": "lb-mocha \"dist/__tests__/**/*.js\"",
23+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
2424
"verify": "npm pack && tar xf loopback-todo-list*.tgz && tree package && npm run clean",
2525
"migrate": "node ./dist/src/migrate",
2626
"prestart": "npm run build",

examples/todo-list/test/acceptance/todo-list-image.acceptance.ts renamed to examples/todo-list/src/__tests__/acceptance/todo-list-image.acceptance.ts

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,9 @@ import {
1010
givenHttpServerConfig,
1111
toJSON,
1212
} from '@loopback/testlab';
13-
import {TodoListApplication} from '../../src/application';
14-
import {TodoList, TodoListImage} from '../../src/models/';
15-
import {
16-
TodoListRepository,
17-
TodoListImageRepository,
18-
} from '../../src/repositories/';
13+
import {TodoListApplication} from '../../application';
14+
import {TodoList, TodoListImage} from '../../models/';
15+
import {TodoListRepository, TodoListImageRepository} from '../../repositories/';
1916
import {givenTodoListImage, givenTodoList} from '../helpers';
2017

2118
describe('TodoListApplication', () => {

examples/todo-list/test/acceptance/todo-list-todo.acceptance.ts renamed to examples/todo-list/src/__tests__/acceptance/todo-list-todo.acceptance.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,9 @@ import {
1010
givenHttpServerConfig,
1111
toJSON,
1212
} from '@loopback/testlab';
13-
import {TodoListApplication} from '../../src/application';
14-
import {Todo, TodoList} from '../../src/models/';
15-
import {TodoListRepository, TodoRepository} from '../../src/repositories/';
13+
import {TodoListApplication} from '../../application';
14+
import {Todo, TodoList} from '../../models/';
15+
import {TodoListRepository, TodoRepository} from '../../repositories/';
1616
import {givenTodo, givenTodoList} from '../helpers';
1717

1818
describe('TodoListApplication', () => {

examples/todo-list/test/acceptance/todo-list.acceptance.ts renamed to examples/todo-list/src/__tests__/acceptance/todo-list.acceptance.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import {
1111
givenHttpServerConfig,
1212
toJSON,
1313
} from '@loopback/testlab';
14-
import {TodoListApplication} from '../../src/application';
15-
import {TodoList} from '../../src/models/';
16-
import {TodoListRepository} from '../../src/repositories/';
14+
import {TodoListApplication} from '../../application';
15+
import {TodoList} from '../../models/';
16+
import {TodoListRepository} from '../../repositories/';
1717
import {givenTodoList} from '../helpers';
1818

1919
describe('TodoListApplication', () => {

examples/todo-list/test/acceptance/todo.acceptance.ts renamed to examples/todo-list/src/__tests__/acceptance/todo.acceptance.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import {
1111
givenHttpServerConfig,
1212
toJSON,
1313
} from '@loopback/testlab';
14-
import {TodoListApplication} from '../../src/application';
15-
import {Todo, TodoList} from '../../src/models/';
16-
import {TodoRepository, TodoListRepository} from '../../src/repositories/';
14+
import {TodoListApplication} from '../../application';
15+
import {Todo, TodoList} from '../../models/';
16+
import {TodoRepository, TodoListRepository} from '../../repositories/';
1717
import {givenTodo, givenTodoList} from '../helpers';
1818

1919
describe('TodoListApplication', () => {

examples/todo-list/test/helpers.ts renamed to examples/todo-list/src/__tests__/helpers.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
// This file is licensed under the MIT License.
44
// License text available at https://opensource.org/licenses/MIT
55

6-
import {Todo, TodoList, TodoListImage} from '../src/models';
6+
import {Todo, TodoList, TodoListImage} from '../models';
77

88
/*
99
==============================================================================

examples/todo-list/test/unit/controllers/todo-list-todo.controller.unit.ts renamed to examples/todo-list/src/__tests__/unit/controllers/todo-list-todo.controller.unit.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,9 @@ import {
1313
sinon,
1414
StubbedInstanceWithSinonAccessor,
1515
} from '@loopback/testlab';
16-
import {TodoListTodoController} from '../../../src/controllers';
17-
import {Todo, TodoList} from '../../../src/models';
18-
import {TodoListRepository} from '../../../src/repositories';
16+
import {TodoListTodoController} from '../../../controllers';
17+
import {Todo, TodoList} from '../../../models';
18+
import {TodoListRepository} from '../../../repositories';
1919
import {givenTodo, givenTodoList} from '../../helpers';
2020

2121
describe('TodoController', () => {

examples/todo-list/test/unit/controllers/todo-list.controller.unit.ts renamed to examples/todo-list/src/__tests__/unit/controllers/todo-list.controller.unit.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import {
99
sinon,
1010
StubbedInstanceWithSinonAccessor,
1111
} from '@loopback/testlab';
12-
import {TodoListController} from '../../../src/controllers';
13-
import {TodoList} from '../../../src/models';
14-
import {TodoListRepository} from '../../../src/repositories';
12+
import {TodoListController} from '../../../controllers';
13+
import {TodoList} from '../../../models';
14+
import {TodoListRepository} from '../../../repositories';
1515
import {givenTodoList} from '../../helpers';
1616

1717
describe('TodoController', () => {

examples/todo-list/test/unit/controllers/todo.controller.unit.ts renamed to examples/todo-list/src/__tests__/unit/controllers/todo.controller.unit.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import {
99
sinon,
1010
StubbedInstanceWithSinonAccessor,
1111
} from '@loopback/testlab';
12-
import {TodoController} from '../../../src/controllers';
13-
import {Todo} from '../../../src/models';
14-
import {TodoRepository} from '../../../src/repositories';
12+
import {TodoController} from '../../../controllers';
13+
import {Todo} from '../../../models';
14+
import {TodoRepository} from '../../../repositories';
1515
import {givenTodo} from '../../helpers';
1616

1717
describe('TodoController', () => {

examples/todo-list/src/application.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export class TodoListApplication extends BootMixin(
2121
this.sequence(MySequence);
2222

2323
// Set up default home page
24-
this.static('/', path.join(__dirname, '../../public'));
24+
this.static('/', path.join(__dirname, '../public'));
2525

2626
this.component(RestExplorerComponent);
2727

examples/todo-list/tsconfig.build.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,5 @@
44
"compilerOptions": {
55
"rootDir": "."
66
},
7-
"include": ["index.ts", "src", "test"]
7+
"include": ["src"]
88
}

examples/todo/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@
1919
"tslint": "lb-tslint",
2020
"tslint:fix": "npm run tslint -- --fix",
2121
"pretest": "npm run build",
22-
"test": "lb-mocha \"dist/test/*/**/*.js\"",
23-
"test:dev": "lb-mocha --allow-console-logs dist/test/**/*.js && npm run posttest",
22+
"test": "lb-mocha \"dist/__tests__/**/*.js\"",
23+
"test:dev": "lb-mocha --allow-console-logs dist/__tests__/**/*.js && npm run posttest",
2424
"verify": "npm pack && tar xf loopback-todo*.tgz && tree package && npm run clean",
2525
"migrate": "node ./dist/src/migrate",
2626
"prestart": "npm run build",

examples/todo/test/acceptance/todo.acceptance.ts renamed to examples/todo/src/__tests__/acceptance/todo.acceptance.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ import {
1111
givenHttpServerConfig,
1212
toJSON,
1313
} from '@loopback/testlab';
14-
import {TodoListApplication} from '../../src/application';
15-
import {Todo} from '../../src/models/';
16-
import {TodoRepository} from '../../src/repositories/';
14+
import {TodoListApplication} from '../../application';
15+
import {Todo} from '../../models/';
16+
import {TodoRepository} from '../../repositories/';
1717
import {
1818
aLocation,
1919
getProxiedGeoCoderConfig,

examples/todo/test/helpers.ts renamed to examples/todo/src/__tests__/helpers.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
import {HttpCachingProxy} from '@loopback/http-caching-proxy';
77
import {merge} from 'lodash';
88
import * as path from 'path';
9-
import {Todo} from '../src/models/index';
10-
import {GeoPoint} from '../src/services/geocoder.service';
11-
import * as GEO_CODER_CONFIG from '../src/datasources/geocoder.datasource.json';
9+
import {Todo} from '../models/index';
10+
import {GeoPoint} from '../services/geocoder.service';
11+
import * as GEO_CODER_CONFIG from '../datasources/geocoder.datasource.json';
1212

1313
/*
1414
==============================================================================

examples/todo/test/integration/services/geocoder.service.integration.ts renamed to examples/todo/src/__tests__/integration/services/geocoder.service.integration.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@
44
// License text available at https://opensource.org/licenses/MIT
55

66
import {expect} from '@loopback/testlab';
7-
import {GeocoderService, GeocoderServiceProvider} from '../../../src/services';
7+
import {GeocoderService, GeocoderServiceProvider} from '../../../services';
88
import {
99
HttpCachingProxy,
1010
givenCachingProxy,
1111
getProxiedGeoCoderConfig,
1212
} from '../../helpers';
13-
import {GeocoderDataSource} from '../../../src/datasources/geocoder.datasource';
13+
import {GeocoderDataSource} from '../../../datasources/geocoder.datasource';
1414

1515
describe('GeoLookupService', function() {
1616
// tslint:disable-next-line:no-invalid-this

examples/todo/test/unit/controllers/todo.controller.unit.ts renamed to examples/todo/src/__tests__/unit/controllers/todo.controller.unit.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ import {
1010
sinon,
1111
StubbedInstanceWithSinonAccessor,
1212
} from '@loopback/testlab';
13-
import {TodoController} from '../../../src/controllers';
14-
import {Todo} from '../../../src/models/index';
15-
import {TodoRepository} from '../../../src/repositories';
16-
import {GeocoderService} from '../../../src/services';
13+
import {TodoController} from '../../../controllers';
14+
import {Todo} from '../../../models/index';
15+
import {TodoRepository} from '../../../repositories';
16+
import {GeocoderService} from '../../../services';
1717
import {aLocation, givenTodo} from '../../helpers';
1818

1919
describe('TodoController', () => {

examples/todo/src/application.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export class TodoListApplication extends BootMixin(
2222
this.sequence(MySequence);
2323

2424
// Set up default home page
25-
this.static('/', path.join(__dirname, '../../public'));
25+
this.static('/', path.join(__dirname, '../public'));
2626

2727
this.component(RestExplorerComponent);
2828

examples/todo/tsconfig.build.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"$schema": "http://json.schemastore.org/tsconfig",
33
"extends": "@loopback/build/config/tsconfig.common.json",
44
"compilerOptions": {
5-
"rootDir": "."
5+
"rootDir": "src"
66
},
7-
"include": ["index.ts", "src", "test"]
7+
"include": ["src"]
88
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"test:ci": "node packages/build/bin/run-nyc npm run mocha --scripts-prepend-node-path",
5151
"verify:docs": "npm run build:site -- --verify",
5252
"build:site": "./bin/build-docs-site.sh",
53-
"mocha": "node packages/build/bin/run-mocha \"packages/*/dist/test/**/*.js\" \"packages/*/dist/__tests__/**/*.js\" \"examples/*/dist/test/**/*.js\" \"packages/cli/test/**/*.js\" \"packages/build/test/*/*.js\"",
53+
"mocha": "node packages/build/bin/run-mocha \"packages/*/dist/test/**/*.js\" \"packages/*/dist/__tests__/**/*.js\" \"examples/*/dist/__tests__/**/*.js\" \"packages/cli/test/**/*.js\" \"packages/build/test/*/*.js\"",
5454
"posttest": "npm run lint"
5555
},
5656
"config": {

0 commit comments

Comments
 (0)