Commit c5b455ac authored by nanahira's avatar nanahira

add more unit tests

parent c460ec1c
Pipeline #9472 passed with stages
in 1 minute and 23 seconds
......@@ -143,6 +143,9 @@ describe('Reflector', () => {
const b = new B();
const noop = new Noop();
expect(reflector.get('foo', A)).toEqual('first');
expect(reflector.get('foo', a)).toEqual('first');
expect(reflector.get('foo', B)).toEqual('first');
expect(reflector.get('foo', b)).toEqual('first');
expect(reflector.get('foo', a, 'b')).toEqual('second');
expect(reflector.get('foo', A, 'b')).toEqual('second');
expect(reflector.get('foo', B, 'b')).toEqual('third');
......@@ -154,4 +157,24 @@ describe('Reflector', () => {
expect(reflector.get('foo', Object, 'b')).toBeUndefined();
expect(reflector.get('foo', Function, 'b')).toBeUndefined();
});
it('should inherit the keys on inherited class', () => {
class A {
@Metadata.set('foo', 'first', 'keys')
public a: string;
}
class B extends A {
@Metadata.set('foo', 'second', 'keys')
public b: string;
}
const a = new A();
const b = new B();
expect(reflector.get('keys', A)).toEqual(['a', 'b']);
expect(reflector.get('keys', a)).toEqual(['a', 'b']);
expect(reflector.get('keys', B)).toEqual(['a', 'b']);
expect(reflector.get('keys', b)).toEqual(['a', 'b']);
});
});
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment