Implement fs.readLink to read symlink target.

http://code.google.com/p/phantomjs/issues/detail?id=329
1.5
Ariya Hidayat 2012-03-16 20:43:26 -07:00
parent c2c80c0e96
commit c6091b48c1
3 changed files with 16 additions and 1 deletions

View File

@ -220,6 +220,12 @@ QVariant FileSystem::lastModified(const QString &path) const
return QVariant(QDateTime()); return QVariant(QDateTime());
} }
// Links
QString FileSystem::readLink(const QString &path) const
{
return QFileInfo(path).symLinkTarget();
}
// Tests // Tests
bool FileSystem::exists(const QString &path) const bool FileSystem::exists(const QString &path) const
{ {
@ -446,6 +452,7 @@ void FileSystem::initCompletions()
// functions // functions
addCompletion("list"); addCompletion("list");
addCompletion("absolute"); addCompletion("absolute");
addCompletion("readLink");
addCompletion("exists"); addCompletion("exists");
addCompletion("isDirectory"); addCompletion("isDirectory");
addCompletion("isFile"); addCompletion("isFile");

View File

@ -116,6 +116,9 @@ public slots:
bool changeWorkingDirectory(const QString &path) const; bool changeWorkingDirectory(const QString &path) const;
QString absolute(const QString &relativePath) const; QString absolute(const QString &relativePath) const;
// Links
QString readLink(const QString &path) const;
// Tests // Tests
bool exists(const QString &path) const; bool exists(const QString &path) const;
bool isDirectory(const QString &path) const; bool isDirectory(const QString &path) const;

View File

@ -30,4 +30,9 @@ describe("Files and Directories API", function() {
fs.removeTree(TEST_DIR); fs.removeTree(TEST_DIR);
expect(fs.changeWorkingDirectory(START_CWD)).toBeTruthy(); expect(fs.changeWorkingDirectory(START_CWD)).toBeTruthy();
}); });
});
// TODO: test the actual functionality once we can create symlink.
it("should have readLink function", function() {
expect(typeof fs.readLink).toEqual('function');
});
});