DefinitelyTyped/types/bearcat-es6/bearcat-es6-tests.ts
xinxinran0221010 50d5a672fa
feat(bearcat-es6) add type definition for bearcat-es6 0.6.1 (#42825)
* feat(bearcat-es6) add type definition for bearcat-es6 0.6.1

* fix(bearcat-es6) fix tslint rules

* fix(bearcat-es6) fix tslint rules

* fix(bearcat-es6) supplement some interface and fix some tslint bug

* fix(bearcat-es6) fix some tslint bug

* fix(bearcat-es6) fix some tslint bug

* fix(bearcat-es6) fix some tslint bug

* fix(bearcat-es6) fix some tslint bug

* fix(bearcat-es6) fix some tslint bug

* fix(bearcat-es6) fix some tslint error, and restore tslint rule to default
2020-03-06 10:36:13 -08:00

132 lines
6.0 KiB
TypeScript

import * as bearcat from 'bearcat-es6';
const EF = () => {};
bearcat.createApp({}); // $ExpectType Bearcat
bearcat.start(() => {
bearcat.getBeanByMeta({}); // $ExpectType object | null
bearcat.getBeanByFunc(EF); // $ExpectType object | null
bearcat.use('beanId');
bearcat.module(EF, null);
bearcat.define('testId', EF, null);
bearcat.require('testId');
bearcat.getBean('testId');
bearcat.getFunction('testId'); // $ExpectType ConstructorFunction | null
bearcat.getClass('testId'); // $ExpectType ConstructorFunction | null
bearcat.extend('testSubId', 'testId');
bearcat.call('testId', null);
bearcat.getModel('testSubId');
bearcat.getRoute('testId', 'controllerEntry');
const applicationContext: bearcat.ApplicationContext = bearcat.getApplicationContext(); // $ExpectType ApplicationContext
applicationContext.init();
applicationContext.setStartupDate(Date.now());
applicationContext.getStartupDate(); // $ExpectType number
applicationContext.getResource('/a/c/b'); // $ExpectType object
applicationContext.getConfigLocations(); // $ExpectType string[]
applicationContext.addBeanFactoryPostProcessor({postProcessBeanFactory: EF});
applicationContext.getBeanFactoryProcessors(); // $ExpectType BeanPostProcessor[]
applicationContext.refresh();
applicationContext.refresh(() => {});
applicationContext.isActive();
applicationContext.getBean('testId');
applicationContext.getBeanByMeta({});
applicationContext.getBeanByFunc(EF);
applicationContext.getModel('mId');
applicationContext.getModelDefinition('mId');
applicationContext.getBeanFunction('testId');
applicationContext.extendBean('testId', ['testParentId']);
applicationContext.doExtendBean('testId', 'testParentId');
applicationContext.module(EF, null);
applicationContext.define('testNewId', EF, null);
applicationContext.require('testNewId');
applicationContext.use(['testId']);
applicationContext.async(['testId']);
applicationContext.containsBean('testId'); // $ExpectType boolean
applicationContext.isSingleton('testId'); // $ExpectType boolean
applicationContext.isPrototype('testId'); // $ExpectType boolean
applicationContext.containsBeanDefinition('testId'); // $ExpectType boolean
applicationContext.isRunning(); // $ExpectType boolean
applicationContext.hasBeanFactory(); // $ExpectType boolean
applicationContext.getBeanDefinition('testId');
applicationContext.removeBeanDefinition('testNewId');
applicationContext.setEnv('testing');
applicationContext.getEnv(); // $ExpectType string
applicationContext.setConfigPath('./config');
applicationContext.getConfigPath();
applicationContext.setHotPath('./src');
applicationContext.getHotPath();
applicationContext.getBase();
const asyncScriptLoader: bearcat.AsyncScriptLoader = applicationContext.getAsyncScriptLoader(); // $ExpectType AsyncScriptLoader
asyncScriptLoader.getLoadBeans();
asyncScriptLoader.load(['abc'], () => {});
asyncScriptLoader.save('/a/b', {});
asyncScriptLoader.module('mId', {});
asyncScriptLoader.resolve('mId', ''); // $ExpectType string
asyncScriptLoader.resolveDeps({});
asyncScriptLoader.getPathById('mId');
asyncScriptLoader.get('/a/b', []);
asyncScriptLoader.setApplicationContext(applicationContext);
const bootStrapLoader: bearcat.BootStrapLoader = applicationContext.getBootStrapLoader(); // $ExpectType BootStrapLoader
bootStrapLoader.load(['a']);
const resourceLoader: bearcat.ResourceLoader = applicationContext.getResourceLoader(); // $ExpectType ResourceLoader
resourceLoader.addLoadPath('./');
resourceLoader.getConfigLoader();
resourceLoader.load('./a');
const beanFactory: bearcat.BeanFactory = applicationContext.getBeanFactory(); // $ExpectType BeanFactory
const beanFactorySame = bearcat.getBeanFactory(); // $ExpectType BeanFactory
if (beanFactory !== beanFactorySame) {
return; // should not run here!
}
beanFactory.getBean('testId');
beanFactory.getBeanProxy('testId');
beanFactory.getModelProxy('mId');
beanFactory.getConstraint('cId');
beanFactory.setParentBean('testParentBean');
beanFactory.registerBeans({});
beanFactory.registerBean('testNewId', {});
beanFactory.registerModel('testId', 'mNewId', {});
beanFactory.registerConstraint('testId', 'cNewId', {});
beanFactory.preInstantiateSingletons();
beanFactory.addBeanPostProcessor({postProcessBeanFactory: EF});
beanFactory.getBeanPostProcessors();
beanFactory.isSingleton('testId');
beanFactory.isPrototype('testId');
beanFactory.containsBean('testId');
beanFactory.getBeanFunction('testId');
beanFactory.setBeanFunction('testId', EF);
beanFactory.removeFunction('testId');
beanFactory.getInitCb('testId');
beanFactory.setInitCb('testId', EF);
beanFactory.getBeanDefinition('testId');
beanFactory.getBeanDefinitions();
beanFactory.removeBeanDefinition('testId');
beanFactory.containsBeanDefinition('testId');
beanFactory.getAspects(); // $ExpectType object[]
beanFactory.getModelDefinition('mId');
beanFactory.getModelDefinitions();
beanFactory.getConstraintDefinition('cId');
beanFactory.setTableModelMap('tId', {});
beanFactory.getModelDefinitionByTable('tId');
const moduleFactory: bearcat.ModuleFactory = applicationContext.getModuleFactory();
moduleFactory.define('mId', {});
moduleFactory.require('mId');
beanFactory.destroyBean('testId', {});
beanFactory.destroySingleton('testNewId');
beanFactory.destroySingletons();
beanFactory.destroyBeanFactory();
applicationContext.closeBeanFactory();
applicationContext.cancelRefresh();
applicationContext.destroy();
bearcat.stop();
});
bearcat.async('test', () => {});