123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- const { expect } = require('chai');
- const { BasicBase } = require('../src/bases/BasicBase');
- const { AdvancedBase } = require('../src/AdvancedBase');
- class ClassA extends BasicBase {
- static STATIC_OBJ = {
- a: 1,
- b: 2,
- };
- static STATIC_ARR = ['a', 'b'];
- }
- class ClassB extends ClassA {
- static STATIC_OBJ = {
- c: 3,
- d: 4,
- };
- static STATIC_ARR = ['c', 'd'];
- }
- describe('testing', () => {
- it('does a thing', () => {
- const b = new ClassB();
-
- console.log(b._get_inheritance_chain());
- console.log([ClassA, ClassB]);
- expect(b._get_inheritance_chain()).deep.equal([ClassA, ClassB]);
- expect(b._get_merged_static_array('STATIC_ARR'))
- .deep.equal(['a', 'b', 'c', 'd']);
- expect(b._get_merged_static_object('STATIC_OBJ'))
- .deep.equal({ a: 1, b: 2, c: 3, d: 4 });
- });
- });
- class ClassWithModule extends AdvancedBase {
- static MODULES = {
- axios: 'axios',
- };
- }
- describe('AdvancedBase', () => {
- it('passes DI modules to instance', () => {
- const c1 = new ClassWithModule();
- expect(c1.modules.axios).to.equal('axios');
- const c2 = new ClassWithModule({
- modules: {
- axios: 'my-axios',
- },
- });
- expect(c2.modules.axios).to.equal('my-axios');
- });
- });
|