mirror of https://github.com/abpframework/abp.git
Browse Source
Migrate library schematic test setup from Karma/Jasmine to Vitest and Angular standalone testing. Removed Karma config and legacy test.ts templates, added src/test-setup.ts templates that initialize Angular testing with zone.js/testing and BrowserTestingModule. Updated tsconfig.lib.json to exclude src/test-setup.ts and tsconfig.spec.json to use "vitest/globals" types and simplified include/files. Adjusted generate-lib to use a UnitTest builder with a vitest runner and buildTarget instead of Karma-specific options, and added UnitTest to Builders enum.pull/24788/head
12 changed files with 24 additions and 165 deletions
@ -1,44 +0,0 @@ |
|||||
// Karma configuration file, see link for more information |
|
||||
// https://karma-runner.github.io/1.0/config/configuration-file.html |
|
||||
|
|
||||
module.exports = function (config) { |
|
||||
config.set({ |
|
||||
basePath: '', |
|
||||
frameworks: ['jasmine', '@angular-devkit/build-angular'], |
|
||||
plugins: [ |
|
||||
require('karma-jasmine'), |
|
||||
require('karma-chrome-launcher'), |
|
||||
require('karma-jasmine-html-reporter'), |
|
||||
require('karma-coverage'), |
|
||||
require('@angular-devkit/build-angular/plugins/karma') |
|
||||
], |
|
||||
client: { |
|
||||
jasmine: { |
|
||||
// you can add configuration options for Jasmine here |
|
||||
// the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html |
|
||||
// for example, you can disable the random execution with `random: false` |
|
||||
// or set a specific seed with `seed: 4321` |
|
||||
}, |
|
||||
clearContext: false // leave Jasmine Spec Runner output visible in browser |
|
||||
}, |
|
||||
jasmineHtmlReporter: { |
|
||||
suppressAll: true // removes the duplicated traces |
|
||||
}, |
|
||||
coverageReporter: { |
|
||||
dir: require('path').join(__dirname, '../../coverage/<%= kebab(libraryName) %>'), |
|
||||
subdir: '.', |
|
||||
reporters: [ |
|
||||
{ type: 'html' }, |
|
||||
{ type: 'text-summary' } |
|
||||
] |
|
||||
}, |
|
||||
reporters: ['progress', 'kjhtml'], |
|
||||
port: 9876, |
|
||||
colors: true, |
|
||||
logLevel: config.LOG_INFO, |
|
||||
autoWatch: true, |
|
||||
browsers: ['Chrome'], |
|
||||
singleRun: false, |
|
||||
restartOnFileChange: true |
|
||||
}); |
|
||||
}; |
|
||||
@ -0,0 +1,7 @@ |
|||||
|
import 'zone.js'; |
||||
|
import 'zone.js/testing'; |
||||
|
import { getTestBed } from '@angular/core/testing'; |
||||
|
import { BrowserTestingModule, platformBrowserTesting } from '@angular/platform-browser/testing'; |
||||
|
|
||||
|
// Initialize Angular testing environment |
||||
|
getTestBed().initTestEnvironment(BrowserTestingModule, platformBrowserTesting()); |
||||
@ -1,26 +0,0 @@ |
|||||
// This file is required by karma.conf.js and loads recursively all the .spec and framework files |
|
||||
|
|
||||
import 'zone.js'; |
|
||||
import 'zone.js/testing'; |
|
||||
import { getTestBed } from '@angular/core/testing'; |
|
||||
import { |
|
||||
BrowserDynamicTestingModule, |
|
||||
platformBrowserDynamicTesting |
|
||||
} from '@angular/platform-browser-dynamic/testing'; |
|
||||
|
|
||||
declare const require: { |
|
||||
context(path: string, deep?: boolean, filter?: RegExp): { |
|
||||
keys(): string[]; |
|
||||
<T>(id: string): T; |
|
||||
}; |
|
||||
}; |
|
||||
|
|
||||
// First, initialize the Angular testing environment. |
|
||||
getTestBed().initTestEnvironment( |
|
||||
BrowserDynamicTestingModule, |
|
||||
platformBrowserDynamicTesting() |
|
||||
); |
|
||||
// Then we find all the tests. |
|
||||
const context = require.context('./', true, /\.spec\.ts$/); |
|
||||
// And load the modules. |
|
||||
context.keys().map(context); |
|
||||
@ -1,44 +0,0 @@ |
|||||
// Karma configuration file, see link for more information |
|
||||
// https://karma-runner.github.io/1.0/config/configuration-file.html |
|
||||
|
|
||||
module.exports = function (config) { |
|
||||
config.set({ |
|
||||
basePath: '', |
|
||||
frameworks: ['jasmine', '@angular-devkit/build-angular'], |
|
||||
plugins: [ |
|
||||
require('karma-jasmine'), |
|
||||
require('karma-chrome-launcher'), |
|
||||
require('karma-jasmine-html-reporter'), |
|
||||
require('karma-coverage'), |
|
||||
require('@angular-devkit/build-angular/plugins/karma') |
|
||||
], |
|
||||
client: { |
|
||||
jasmine: { |
|
||||
// you can add configuration options for Jasmine here |
|
||||
// the possible options are listed at https://jasmine.github.io/api/edge/Configuration.html |
|
||||
// for example, you can disable the random execution with `random: false` |
|
||||
// or set a specific seed with `seed: 4321` |
|
||||
}, |
|
||||
clearContext: false // leave Jasmine Spec Runner output visible in browser |
|
||||
}, |
|
||||
jasmineHtmlReporter: { |
|
||||
suppressAll: true // removes the duplicated traces |
|
||||
}, |
|
||||
coverageReporter: { |
|
||||
dir: require('path').join(__dirname, '../../coverage/<%= kebab(libraryName) %>'), |
|
||||
subdir: '.', |
|
||||
reporters: [ |
|
||||
{ type: 'html' }, |
|
||||
{ type: 'text-summary' } |
|
||||
] |
|
||||
}, |
|
||||
reporters: ['progress', 'kjhtml'], |
|
||||
port: 9876, |
|
||||
colors: true, |
|
||||
logLevel: config.LOG_INFO, |
|
||||
autoWatch: true, |
|
||||
browsers: ['Chrome'], |
|
||||
singleRun: false, |
|
||||
restartOnFileChange: true |
|
||||
}); |
|
||||
}; |
|
||||
@ -0,0 +1,7 @@ |
|||||
|
import 'zone.js'; |
||||
|
import 'zone.js/testing'; |
||||
|
import { getTestBed } from '@angular/core/testing'; |
||||
|
import { BrowserTestingModule, platformBrowserTesting } from '@angular/platform-browser/testing'; |
||||
|
|
||||
|
// Initialize Angular testing environment |
||||
|
getTestBed().initTestEnvironment(BrowserTestingModule, platformBrowserTesting()); |
||||
@ -1,26 +0,0 @@ |
|||||
// This file is required by karma.conf.js and loads recursively all the .spec and framework files |
|
||||
|
|
||||
import 'zone.js'; |
|
||||
import 'zone.js/testing'; |
|
||||
import { getTestBed } from '@angular/core/testing'; |
|
||||
import { |
|
||||
BrowserDynamicTestingModule, |
|
||||
platformBrowserDynamicTesting |
|
||||
} from '@angular/platform-browser-dynamic/testing'; |
|
||||
|
|
||||
declare const require: { |
|
||||
context(path: string, deep?: boolean, filter?: RegExp): { |
|
||||
keys(): string[]; |
|
||||
<T>(id: string): T; |
|
||||
}; |
|
||||
}; |
|
||||
|
|
||||
// First, initialize the Angular testing environment. |
|
||||
getTestBed().initTestEnvironment( |
|
||||
BrowserDynamicTestingModule, |
|
||||
platformBrowserDynamicTesting() |
|
||||
); |
|
||||
// Then we find all the tests. |
|
||||
const context = require.context('./', true, /\.spec\.ts$/); |
|
||||
// And load the modules. |
|
||||
context.keys().map(context); |
|
||||
Loading…
Reference in new issue