diff --git a/lib/src/backends/memory/memory_file_system_entity.dart b/lib/src/backends/memory/memory_file_system_entity.dart
index 0ca0c6d..b43a6dd 100644
--- a/lib/src/backends/memory/memory_file_system_entity.dart
+++ b/lib/src/backends/memory/memory_file_system_entity.dart
@@ -81,6 +81,9 @@
   @override
   String resolveSymbolicLinksSync() {
     List<String> ledger = <String>[];
+    if (isAbsolute) {
+      ledger.add('');
+    }
     _Node node = fileSystem._findNode(path,
         pathWithSymlinks: ledger, followTailLink: true);
     _checkExists(node, () => path);
diff --git a/test/common_tests.dart b/test/common_tests.dart
index 99ed345..2e9648e 100644
--- a/test/common_tests.dart
+++ b/test/common_tests.dart
@@ -172,6 +172,15 @@
           expect(fs.currentDirectory.path, ns('/foo/bar'));
         });
 
+        test('succeedsIfSetToAbsolutePathWhenCwdIsNotRoot', () {
+          fs.directory(ns('/foo/bar')).createSync(recursive: true);
+          fs.directory(ns('/baz/qux')).createSync(recursive: true);
+          fs.currentDirectory = ns('/foo/bar');
+          expect(fs.currentDirectory.path, ns('/foo/bar'));
+          fs.currentDirectory = fs.directory(ns('/baz/qux'));
+          expect(fs.currentDirectory.path, ns('/baz/qux'));
+        });
+
         test('succeedsIfSetToParentDirectory', () {
           fs.directory(ns('/foo')).createSync();
           fs.currentDirectory = 'foo';
@@ -749,6 +758,13 @@
               fs.directory('baz').resolveSymbolicLinksSync(), ns('/foo/bar'));
         });
 
+        test('resolvesAbsolutePathsAbsolutely', () {
+          fs.directory(ns('/foo/bar')).createSync(recursive: true);
+          fs.currentDirectory = ns('/foo');
+          expect(fs.directory(ns('/foo/bar')).resolveSymbolicLinksSync(),
+              ns('/foo/bar'));
+        });
+
         test('handlesRelativeLinks', () {
           fs.directory(ns('/foo/bar/baz')).createSync(recursive: true);
           fs.link(ns('/foo/qux')).createSync('bar/baz');
