New Baselines for class-interface merging

This commit is contained in:
Arthur Ozga
2015-06-01 16:39:41 -07:00
parent 6c98c67714
commit b864df2fd4
7 changed files with 161 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(2,12): error TS2300: Duplicate identifier 'x'.
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(6,5): error TS2300: Duplicate identifier 'x'.
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(10,15): error TS2300: Duplicate identifier 'x'.
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(14,5): error TS2300: Duplicate identifier 'x'.
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(18,13): error TS2300: Duplicate identifier 'x'.
tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts(22,5): error TS2300: Duplicate identifier 'x'.
==== tests/cases/conformance/classes/classDeclarations/classAndInterfaceMergeConflictingMembers.ts (6 errors) ====
declare class C1 {
public x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}
interface C1 {
x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}
declare class C2 {
protected x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}
interface C2 {
x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}
declare class C3 {
private x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}
interface C3 {
x : number;
~
!!! error TS2300: Duplicate identifier 'x'.
}

View File

@@ -0,0 +1,26 @@
//// [classAndInterfaceMergeConflictingMembers.ts]
declare class C1 {
public x : number;
}
interface C1 {
x : number;
}
declare class C2 {
protected x : number;
}
interface C2 {
x : number;
}
declare class C3 {
private x : number;
}
interface C3 {
x : number;
}
//// [classAndInterfaceMergeConflictingMembers.js]

View File

@@ -0,0 +1,27 @@
tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts(1,15): error TS2300: Duplicate identifier 'C1'.
tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts(3,15): error TS2300: Duplicate identifier 'C1'.
tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts(5,15): error TS2300: Duplicate identifier 'C2'.
tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts(7,11): error TS2300: Duplicate identifier 'C2'.
tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts(9,15): error TS2300: Duplicate identifier 'C2'.
==== tests/cases/conformance/classes/classDeclarations/declaredClassMergedwithSelf.ts (5 errors) ====
declare class C1 {}
~~
!!! error TS2300: Duplicate identifier 'C1'.
declare class C1 {}
~~
!!! error TS2300: Duplicate identifier 'C1'.
declare class C2 {}
~~
!!! error TS2300: Duplicate identifier 'C2'.
interface C2 {}
~~
!!! error TS2300: Duplicate identifier 'C2'.
declare class C2 {}
~~
!!! error TS2300: Duplicate identifier 'C2'.

View File

@@ -0,0 +1,12 @@
//// [declaredClassMergedwithSelf.ts]
declare class C1 {}
declare class C1 {}
declare class C2 {}
interface C2 {}
declare class C2 {}
//// [declaredClassMergedwithSelf.js]

View File

@@ -0,0 +1,14 @@
//// [mergedClassInterface.ts]
declare class C1 {}
interface C1 {}
interface C2 {}
declare class C2 {}
interface C2 {}
interface C2 {}
//// [mergedClassInterface.js]

View File

@@ -0,0 +1,19 @@
=== tests/cases/conformance/classes/classDeclarations/mergedClassInterface.ts ===
declare class C1 {}
>C1 : Symbol(C1, Decl(mergedClassInterface.ts, 0, 0), Decl(mergedClassInterface.ts, 0, 19))
interface C1 {}
>C1 : Symbol(C1, Decl(mergedClassInterface.ts, 0, 0), Decl(mergedClassInterface.ts, 0, 19))
interface C2 {}
>C2 : Symbol(C2, Decl(mergedClassInterface.ts, 2, 15), Decl(mergedClassInterface.ts, 4, 15), Decl(mergedClassInterface.ts, 6, 19), Decl(mergedClassInterface.ts, 8, 15))
declare class C2 {}
>C2 : Symbol(C2, Decl(mergedClassInterface.ts, 2, 15), Decl(mergedClassInterface.ts, 4, 15), Decl(mergedClassInterface.ts, 6, 19), Decl(mergedClassInterface.ts, 8, 15))
interface C2 {}
>C2 : Symbol(C2, Decl(mergedClassInterface.ts, 2, 15), Decl(mergedClassInterface.ts, 4, 15), Decl(mergedClassInterface.ts, 6, 19), Decl(mergedClassInterface.ts, 8, 15))
interface C2 {}
>C2 : Symbol(C2, Decl(mergedClassInterface.ts, 2, 15), Decl(mergedClassInterface.ts, 4, 15), Decl(mergedClassInterface.ts, 6, 19), Decl(mergedClassInterface.ts, 8, 15))

View File

@@ -0,0 +1,19 @@
=== tests/cases/conformance/classes/classDeclarations/mergedClassInterface.ts ===
declare class C1 {}
>C1 : C1
interface C1 {}
>C1 : C1
interface C2 {}
>C2 : C2
declare class C2 {}
>C2 : C2
interface C2 {}
>C2 : C2
interface C2 {}
>C2 : C2