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

Unified Diff: runtime/observatory/tests/service/dev_fs_test.dart

Issue 2208223002: Allow weird characters (like ?) to appear in devfs filenames. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 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
« no previous file with comments | « no previous file | sdk/lib/vmservice/devfs.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/observatory/tests/service/dev_fs_test.dart
diff --git a/runtime/observatory/tests/service/dev_fs_test.dart b/runtime/observatory/tests/service/dev_fs_test.dart
index 5b2930d775ac521d4bdc8065efe3fe0ad77fca90..df99ef6aadc335e01a9bdbd929ce12282d073b14 100644
--- a/runtime/observatory/tests/service/dev_fs_test.dart
+++ b/runtime/observatory/tests/service/dev_fs_test.dart
@@ -153,6 +153,50 @@ var tests = [
});
expect(result['type'], equals('Success'));
},
+
+ // Write a file with the ? character in the filename.
+ (VM vm) async {
+ var fsId = 'test';
+ var filePath = '/foo/bar?dat';
+ var fileContents = BASE64.encode(UTF8.encode('fileContents'));
+
+ var result;
+ // Create DevFS.
+ result = await vm.invokeRpcNoUpgrade('_createDevFS', { 'fsName': fsId });
+ expect(result['type'], equals('FileSystem'));
+ expect(result['name'], equals(fsId));
+ expect(result['uri'], new isInstanceOf<String>());
+
+ // Write the file.
+ result = await vm.invokeRpcNoUpgrade('_writeDevFSFile', {
+ 'fsName': fsId,
+ 'path': filePath,
+ 'fileContents': fileContents
+ });
+ expect(result['type'], equals('Success'));
+
+ // Read the file back.
+ result = await vm.invokeRpcNoUpgrade('_readDevFSFile', {
+ 'fsName': fsId,
+ 'path': filePath,
+ });
+ expect(result['type'], equals('FSFile'));
+ expect(result['fileContents'], equals(fileContents));
+
+ // List all the files in the file system.
+ result = await vm.invokeRpcNoUpgrade('_listDevFSFiles', {
+ 'fsName': fsId,
+ });
+ expect(result['type'], equals('FSFileList'));
+ expect(result['files'].length, equals(1));
+ expect(result['files'][0]['name'], equals('/foo/bar?dat'));
+
+ // Delete DevFS.
+ result = await vm.invokeRpcNoUpgrade('_deleteDevFS', {
+ 'fsName': fsId,
+ });
+ expect(result['type'], equals('Success'));
+ },
];
main(args) async => runVMTests(args, tests);
« no previous file with comments | « no previous file | sdk/lib/vmservice/devfs.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698