Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(74)

Unified Diff: dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java

Issue 11233061: Revert "Parts must start with 'part of'" and "Attempt to fix VM build" (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java
diff --git a/dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java b/dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java
index 3ac04a3947001d6119d5b1786bf065c952962a48..ca2131feea0f2758d30870ae0ac34ae5a781c35c 100644
--- a/dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java
+++ b/dart/editor/tools/plugins/com.google.dart.tools.core_test/src/com/google/dart/tools/core/analysis/FileChangedTaskTest.java
@@ -13,14 +13,14 @@
*/
package com.google.dart.tools.core.analysis;
+import com.google.dart.engine.utilities.io.PrintStringWriter;
+import com.google.dart.tools.core.test.util.FileUtilities;
+
import static com.google.dart.tools.core.analysis.AnalysisTestUtilities.assertCachedLibraries;
import static com.google.dart.tools.core.analysis.AnalysisTestUtilities.assertPackageContexts;
import static com.google.dart.tools.core.analysis.AnalysisTestUtilities.assertTrackedLibraryFiles;
import static com.google.dart.tools.core.analysis.AnalysisTestUtilities.getCachedLibrary;
-import com.google.dart.engine.utilities.io.PrintStringWriter;
-import com.google.dart.tools.core.test.util.FileUtilities;
-
public class FileChangedTaskTest extends AbstractDartAnalysisTest {
/**
@@ -42,58 +42,6 @@ public class FileChangedTaskTest extends AbstractDartAnalysisTest {
private Listener listener;
/**
- * Assert removing #source directive causes sourced file to become analyzed as library
- * <p>
- * TODO(scheglov) disabled because now 'part of' directive required
- */
- public void _test_changed_library() throws Exception {
- final String directive = "#source(\"simple_money.dart\");";
- final String oldContent = FileUtilities.getContents(moneyLibFile);
- int index = oldContent.indexOf(directive);
- assertTrue(index > 0);
- final String newContent = oldContent.substring(0, index)
- + oldContent.substring(index + directive.length());
-
- server.scan(moneyLibFile, null);
- server.start();
- listener.waitForIdle(1, FIVE_MINUTES_MS);
- assertTrackedLibraryFiles(server, moneyLibFile);
- Object lib1 = getCachedLibrary(savedContext, moneyLibFile);
- assertNotNull(lib1);
- assertNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
-
- server.resetAnalyzeContext();
- final long oldLastModified = moneyLibFile.lastModified();
- FileUtilities.setContents(moneyLibFile, newContent);
- // Ensure marked as modified... lastModified is only accurate to the second
- moneyLibFile.setLastModified(oldLastModified + 1000);
- try {
- server.changed(moneyLibFile);
- listener.waitForIdle(2, FIVE_MINUTES_MS);
- assertTrackedLibraryFiles(server, moneyLibFile, simpleMoneySrcFile);
- server.assertAnalyzeContext(true);
- Object lib2 = getCachedLibrary(savedContext, moneyLibFile);
- assertNotNull(lib2);
- assertNotSame(lib1, lib2);
- lib1 = lib2;
- assertNotNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
- } finally {
- FileUtilities.setContents(moneyLibFile, oldContent);
- moneyLibFile.setLastModified(oldLastModified);
- }
-
- server.resetAnalyzeContext();
- server.changed(moneyLibFile);
- listener.waitForIdle(3, FIVE_MINUTES_MS);
- assertTrackedLibraryFiles(server, moneyLibFile);
- server.assertAnalyzeContext(true);
- Object lib2 = getCachedLibrary(savedContext, moneyLibFile);
- assertNotNull(lib2);
- assertNotSame(lib1, lib2);
- assertNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
- }
-
- /**
* Assert cache discarded only if file has changed on disk
*/
public void test_changed() {
@@ -120,6 +68,60 @@ public class FileChangedTaskTest extends AbstractDartAnalysisTest {
}
/**
+ * Assert adding and removing import in application does not change context of imported nested
+ * library because that library is in the application directory hierarchy.
+ */
+ public void test_changed_application_importNested() throws Exception {
+ final String directive = "#import('nested/nestedLib.dart');";
+ final String oldContent = FileUtilities.getContents(bankLibFile);
+ int index = oldContent.indexOf(directive);
+ assertTrue(index > 0);
+ final String newContent = oldContent.substring(0, index)
+ + oldContent.substring(index + directive.length());
+
+ server.scan(bankDir, null);
+ server.start();
+ listener.waitForIdle(1, FIVE_MINUTES_MS);
+ assertPackageContexts(server, bankDir);
+ assertCachedLibraries(server, null);
+ assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
+ ParseResult parse1 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
+ assertNotNull(parse1.getDartUnit());
+ listener.waitForIdle(2, FIVE_MINUTES_MS);
+
+ final long oldLastModified = bankLibFile.lastModified();
+ FileUtilities.setContents(bankLibFile, newContent);
+ // Ensure marked as modified... lastModified is only accurate to the second
+ bankLibFile.setLastModified(oldLastModified + 1000);
+ ParseResult parse2;
+ try {
+ server.changed(bankLibFile);
+ listener.waitForIdle(3, FIVE_MINUTES_MS);
+
+ assertPackageContexts(server, bankDir);
+ assertCachedLibraries(server, null);
+ assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
+ parse2 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
+ listener.waitForIdle(4, FIVE_MINUTES_MS);
+
+ assertNotNull(parse2.getDartUnit());
+ assertNotSame(parse2.getDartUnit(), parse1.getDartUnit());
+ } finally {
+ FileUtilities.setContents(bankLibFile, oldContent);
+ bankLibFile.setLastModified(oldLastModified);
+ }
+ server.changed(bankLibFile);
+ listener.waitForIdle(5, FIVE_MINUTES_MS);
+ assertPackageContexts(server, bankDir);
+ assertCachedLibraries(server, null);
+ assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
+ ParseResult parse3 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
+ assertNotNull(parse3.getDartUnit());
+ assertNotSame(parse3.getDartUnit(), parse1.getDartUnit());
+ assertNotSame(parse3.getDartUnit(), parse2.getDartUnit());
+ }
+
+ /**
* Assert adding and removing import in application changes context of imported outside library
* because that library is outside the application directory hierarchy.
*/
@@ -172,57 +174,53 @@ public class FileChangedTaskTest extends AbstractDartAnalysisTest {
// }
/**
- * Assert adding and removing import in application does not change context of imported nested
- * library because that library is in the application directory hierarchy.
+ * Assert removing #source directive causes sourced file to become analyzed as library
*/
- public void test_changed_application_importNested() throws Exception {
- final String directive = "#import('nested/nestedLib.dart');";
- final String oldContent = FileUtilities.getContents(bankLibFile);
+ public void test_changed_library() throws Exception {
+ final String directive = "#source(\"simple_money.dart\");";
+ final String oldContent = FileUtilities.getContents(moneyLibFile);
int index = oldContent.indexOf(directive);
assertTrue(index > 0);
final String newContent = oldContent.substring(0, index)
+ oldContent.substring(index + directive.length());
- server.scan(bankDir, null);
+ server.scan(moneyLibFile, null);
server.start();
listener.waitForIdle(1, FIVE_MINUTES_MS);
- assertPackageContexts(server, bankDir);
- assertCachedLibraries(server, null);
- assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
- ParseResult parse1 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
- assertNotNull(parse1.getDartUnit());
- listener.waitForIdle(2, FIVE_MINUTES_MS);
+ assertTrackedLibraryFiles(server, moneyLibFile);
+ Object lib1 = getCachedLibrary(savedContext, moneyLibFile);
+ assertNotNull(lib1);
+ assertNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
- final long oldLastModified = bankLibFile.lastModified();
- FileUtilities.setContents(bankLibFile, newContent);
+ server.resetAnalyzeContext();
+ final long oldLastModified = moneyLibFile.lastModified();
+ FileUtilities.setContents(moneyLibFile, newContent);
// Ensure marked as modified... lastModified is only accurate to the second
- bankLibFile.setLastModified(oldLastModified + 1000);
- ParseResult parse2;
+ moneyLibFile.setLastModified(oldLastModified + 1000);
try {
- server.changed(bankLibFile);
- listener.waitForIdle(3, FIVE_MINUTES_MS);
-
- assertPackageContexts(server, bankDir);
- assertCachedLibraries(server, null);
- assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
- parse2 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
- listener.waitForIdle(4, FIVE_MINUTES_MS);
-
- assertNotNull(parse2.getDartUnit());
- assertNotSame(parse2.getDartUnit(), parse1.getDartUnit());
+ server.changed(moneyLibFile);
+ listener.waitForIdle(2, FIVE_MINUTES_MS);
+ assertTrackedLibraryFiles(server, moneyLibFile, simpleMoneySrcFile);
+ server.assertAnalyzeContext(true);
+ Object lib2 = getCachedLibrary(savedContext, moneyLibFile);
+ assertNotNull(lib2);
+ assertNotSame(lib1, lib2);
+ lib1 = lib2;
+ assertNotNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
} finally {
- FileUtilities.setContents(bankLibFile, oldContent);
- bankLibFile.setLastModified(oldLastModified);
+ FileUtilities.setContents(moneyLibFile, oldContent);
+ moneyLibFile.setLastModified(oldLastModified);
}
- server.changed(bankLibFile);
- listener.waitForIdle(5, FIVE_MINUTES_MS);
- assertPackageContexts(server, bankDir);
- assertCachedLibraries(server, null);
- assertCachedLibraries(server, bankDir, bankLibFile, nestedLibFile, nestedAppFile);
- ParseResult parse3 = savedContext.parse(bankLibFile, bankLibFile, FIVE_MINUTES_MS);
- assertNotNull(parse3.getDartUnit());
- assertNotSame(parse3.getDartUnit(), parse1.getDartUnit());
- assertNotSame(parse3.getDartUnit(), parse2.getDartUnit());
+
+ server.resetAnalyzeContext();
+ server.changed(moneyLibFile);
+ listener.waitForIdle(3, FIVE_MINUTES_MS);
+ assertTrackedLibraryFiles(server, moneyLibFile);
+ server.assertAnalyzeContext(true);
+ Object lib2 = getCachedLibrary(savedContext, moneyLibFile);
+ assertNotNull(lib2);
+ assertNotSame(lib1, lib2);
+ assertNull(getCachedLibrary(savedContext, simpleMoneySrcFile));
}
/**

Powered by Google App Engine
This is Rietveld 408576698