Skip to content

Commit b7a89a6

Browse files
ulitinkintellij-monorepo-bot
authored andcommitted
[typescript] fix evaluation of angular keyvalue pipe (WEB-51209)
GitOrigin-RevId: 8913ad5fccf2f066634216cef78cfa4cc1ec9c73
1 parent 68bd739 commit b7a89a6

File tree

9 files changed

+17620
-5
lines changed

9 files changed

+17620
-5
lines changed

AngularJS/test/org/angular2/codeInsight/NgForTest.java

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,14 @@
11
// Copyright 2000-2018 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
22
package org.angular2.codeInsight;
33

4+
import com.intellij.codeInsight.completion.CompletionType;
5+
import com.intellij.codeInsight.lookup.LookupElement;
6+
import com.intellij.codeInspection.LocalInspectionTool;
7+
import com.intellij.lang.javascript.BaseJSCompletionTestCase;
8+
import com.intellij.lang.javascript.JSDaemonAnalyzerLightTestCase;
49
import org.angular2.Angular2CodeInsightFixtureTestCase;
510
import org.angular2.inspections.Angular2TemplateInspectionsProvider;
11+
import org.angular2.modules.Angular2TestModule;
612
import org.angularjs.AngularTestUtil;
713

814
import java.util.List;
@@ -13,11 +19,6 @@ protected String getTestDataPath() {
1319
return AngularTestUtil.getBaseTestDataPath(getClass()) + "ngFor";
1420
}
1521

16-
@Override
17-
protected boolean isWriteActionRequired() {
18-
return getTestName(true).contains("Completion");
19-
}
20-
2122
public void testNgFor() {
2223
final List<String> variants = myFixture.getCompletionVariants("NgFor.ts", "ng_for_of.ts", "iterable_differs.ts", "package.json");
2324
assertNotNull(variants);
@@ -49,4 +50,15 @@ public void testNgForWithinAttributeHTML() {
4950
assertEquals("created_at", variants.get(0));
5051
assertEquals("email", variants.get(1));
5152
}
53+
54+
public void testNgForWithPipe() { // WEB-51209
55+
myFixture.enableInspections(JSDaemonAnalyzerLightTestCase.configureDefaultLocalInspectionTools().toArray(LocalInspectionTool[]::new));
56+
myFixture.configureByFiles("NgForWithPipeHTML.html", "NgForWithPipe.ts", "package.json");
57+
Angular2TestModule.configure(myFixture, false, null, Angular2TestModule.ANGULAR_CORE_13_3_5, Angular2TestModule.ANGULAR_COMMON_13_3_5);
58+
myFixture.checkHighlighting();
59+
myFixture.type('.');
60+
LookupElement[] elements = myFixture.complete(CompletionType.BASIC);
61+
BaseJSCompletionTestCase.assertStartsWith(elements, 2, "key", "value");
62+
assertEquals("string", BaseJSCompletionTestCase.typeText(elements[0]));
63+
}
5264
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
import {Component} from "@angular/core";
2+
3+
@Component({
4+
selector: 'app-root',
5+
templateUrl: './NgForWithPipeHTML.html',
6+
})
7+
export class AppComponent {
8+
record: Record<string, any> = {"person": {"name": "John", "age": "20"}};
9+
}
10+
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<div class="content" role="main">
2+
<div *ngFor="let item of record | keyvalue">
3+
{{item<caret>}}
4+
</div>
5+
</div>
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"dependencies": {
3+
"@angular/common": "0.0.0",
34
"@angular/core": "0.0.0"
45
}
56
}

AngularJS/test/org/angular2/modules/Angular2TestModule.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,11 @@ public enum Angular2TestModule {
2121
AGM_CORE_1_0_0_BETA_5("@agm/core", "1.0.0-beta.5"),
2222
ANGULAR_COMMON_4_0_0("@angular/common", "4.0.0"),
2323
ANGULAR_COMMON_8_2_14("@angular/common", "8.2.14"),
24+
ANGULAR_COMMON_13_3_5("@angular/common", "13.3.5"),
2425
ANGULAR_CORE_4_0_0("@angular/core", "4.0.0"),
2526
ANGULAR_CORE_8_2_14("@angular/core", "8.2.14"),
2627
ANGULAR_CORE_9_1_1_MIXED("@angular/core", "9.1.1-mixed"),
28+
ANGULAR_CORE_13_3_5("@angular/core", "13.3.5"),
2729
ANGULAR_FLEX_LAYOUT_13_0_0("@angular/flex-layout", "13.0.0-beta.36"),
2830
ANGULAR_FORMS_4_0_0("@angular/forms", "4.0.0"),
2931
ANGULAR_FORMS_8_2_14("@angular/forms", "8.2.14"),

AngularJS/test/org/angular2/modules/node_modules/@angular#common/13.3.5/node_modules/@angular/common/common.d.ts

Lines changed: 2858 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

AngularJS/test/org/angular2/modules/node_modules/@angular#common/13.3.5/node_modules/@angular/common/package.json

Lines changed: 105 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)