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

Side by Side Diff: pkg/docgen/test/single_library_test.dart

Issue 25731003: Use Directory.systemTemp getter in pkg subdirectory of repository. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Fix formatting Created 7 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « pkg/barback/test/asset_test.dart ('k') | pkg/http/test/multipart_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 library single_library_test; 1 library single_library_test;
2 2
3 import 'dart:io'; 3 import 'dart:io';
4 4
5 import 'package:path/path.dart' as path; 5 import 'package:path/path.dart' as path;
6 import 'package:unittest/unittest.dart'; 6 import 'package:unittest/unittest.dart';
7 7
8 import '../lib/docgen.dart'; 8 import '../lib/docgen.dart';
9 9
10 main() { 10 const String DART_LIBRARY = '''
11 group('Generate docs for', () {
12 test('one simple file.', () {
13 var temporaryDir = Directory.systemTemp.createTempSync('single_library_');
14 var fileName = path.join(temporaryDir.path, 'temp.dart');
15 var file = new File(fileName);
16 file.writeAsStringSync('''
17 library test; 11 library test;
18 /** 12 /**
19 * Doc comment for class [A]. 13 * Doc comment for class [A].
20 * 14 *
21 * Multiline Test 15 * Multiline Test
22 */ 16 */
23 /* 17 /*
24 * Normal comment for class A. 18 * Normal comment for class A.
25 */ 19 */
26 class A { 20 class A {
27 21
28 int _someNumber; 22 int _someNumber;
29 23
30 A() { 24 A() {
31 _someNumber = 12; 25 _someNumber = 12;
32 } 26 }
33 27
34 /** 28 /**
35 * Test for linking to parameter [A] 29 * Test for linking to parameter [A]
36 */ 30 */
37 void doThis(int A) { 31 void doThis(int A) {
38 print(A); 32 print(A);
39 } 33 }
40 } 34 }
41 35
42 main() { 36 main() {
43 A a = new A(); 37 A a = new A();
44 a.doThis(5); 38 a.doThis(5);
45 } 39 }
46 '''); 40 ''';
47 41
42 main() {
43 group('Generate docs for', () {
44 test('one simple file.', () {
45 var temporaryDir = Directory.systemTemp.createTempSync('single_library_');
46 var fileName = path.join(temporaryDir.path, 'temp.dart');
47 var file = new File(fileName);
48 file.writeAsStringSync(DART_LIBRARY);
48 getMirrorSystem([fileName]) 49 getMirrorSystem([fileName])
49 .then(expectAsync1((mirrorSystem) { 50 .then(expectAsync1((mirrorSystem) {
50 var testLibraryUri = new Uri(scheme: 'file', 51 var testLibraryUri = new Uri(scheme: 'file',
51 path: path.absolute(fileName)); 52 path: path.absolute(fileName));
52 var library = generateLibrary(mirrorSystem.libraries[testLibraryUri]); 53 var library = generateLibrary(mirrorSystem.libraries[testLibraryUri]);
53 expect(library is Library, isTrue); 54 expect(library is Library, isTrue);
54 55
55 var classTypes = library.classes; 56 var classTypes = library.classes;
56 expect(classTypes is ClassGroup, isTrue); 57 expect(classTypes is ClassGroup, isTrue);
57 58
58 var classes = []; 59 var classes = [];
59 classes.addAll(classTypes.classes.values); 60 classes.addAll(classTypes.classes.values);
60 classes.addAll(classTypes.errors.values); 61 classes.addAll(classTypes.errors.values);
61 expect(classes.every((e) => e is Class), isTrue); 62 expect(classes.every((e) => e is Class), isTrue);
62 63
63 expect(classTypes.typedefs.values.every((e) => e is Typedef), isTrue); 64 expect(classTypes.typedefs.values.every((e) => e is Typedef), isTrue);
64 65
65 var classMethodTypes = []; 66 var classMethodTypes = [];
66 classes.forEach((e) { 67 classes.forEach((e) {
67 classMethodTypes.add(e.methods); 68 classMethodTypes.add(e.methods);
68 classMethodTypes.add(e.inheritedMethods); 69 classMethodTypes.add(e.inheritedMethods);
69 }); 70 });
70 expect(classMethodTypes.every((e) => e is MethodGroup), isTrue); 71 expect(classMethodTypes.every((e) => e is MethodGroup), isTrue);
71 72
72 var classMethods = []; 73 var classMethods = [];
73 classMethodTypes.forEach((e) { 74 classMethodTypes.forEach((e) {
74 classMethods.addAll(e.setters.values); 75 classMethods.addAll(e.setters.values);
75 classMethods.addAll(e.getters.values); 76 classMethods.addAll(e.getters.values);
76 classMethods.addAll(e.constructors.values); 77 classMethods.addAll(e.constructors.values);
77 classMethods.addAll(e.operators.values); 78 classMethods.addAll(e.operators.values);
78 classMethods.addAll(e.regularMethods.values); 79 classMethods.addAll(e.regularMethods.values);
79 }); 80 });
80 expect(classMethods.every((e) => e is Method), isTrue); 81 expect(classMethods.every((e) => e is Method), isTrue);
81 82
82 var methodParameters = []; 83 var methodParameters = [];
83 classMethods.forEach((e) { 84 classMethods.forEach((e) {
84 methodParameters.addAll(e.parameters.values); 85 methodParameters.addAll(e.parameters.values);
85 }); 86 });
86 expect(methodParameters.every((e) => e is Parameter), isTrue); 87 expect(methodParameters.every((e) => e is Parameter), isTrue);
87 88
88 var functionTypes = library.functions; 89 var functionTypes = library.functions;
89 expect(functionTypes is MethodGroup, isTrue); 90 expect(functionTypes is MethodGroup, isTrue);
90 91
91 var functions = []; 92 var functions = [];
92 functions.addAll(functionTypes.setters.values); 93 functions.addAll(functionTypes.setters.values);
93 functions.addAll(functionTypes.getters.values); 94 functions.addAll(functionTypes.getters.values);
94 functions.addAll(functionTypes.constructors.values); 95 functions.addAll(functionTypes.constructors.values);
95 functions.addAll(functionTypes.operators.values); 96 functions.addAll(functionTypes.operators.values);
96 functions.addAll(functionTypes.regularMethods.values); 97 functions.addAll(functionTypes.regularMethods.values);
97 expect(functions.every((e) => e is Method), isTrue); 98 expect(functions.every((e) => e is Method), isTrue);
98 99
99 var functionParameters = []; 100 var functionParameters = [];
100 functions.forEach((e) { 101 functions.forEach((e) {
101 functionParameters.addAll(e.parameters.values); 102 functionParameters.addAll(e.parameters.values);
102 }); 103 });
103 expect(functionParameters.every((e) => e is Parameter), isTrue); 104 expect(functionParameters.every((e) => e is Parameter), isTrue);
104 105
105 var variables = library.variables.values; 106 var variables = library.variables.values;
106 expect(variables.every((e) => e is Variable), isTrue); 107 expect(variables.every((e) => e is Variable), isTrue);
107 108
108 /// Testing fixReference 109 /// Testing fixReference
109 // Testing Doc comment for class [A]. 110 // Testing Doc comment for class [A].
110 var libraryMirror = mirrorSystem.libraries[testLibraryUri]; 111 var libraryMirror = mirrorSystem.libraries[testLibraryUri];
111 var classMirror = libraryMirror.classes.values.first; 112 var classMirror = libraryMirror.classes.values.first;
112 var classDocComment = fixReference('A', libraryMirror, 113 var classDocComment = fixReference('A', libraryMirror,
113 classMirror, null).children.first.text; 114 classMirror, null).children.first.text;
114 expect(classDocComment == 'test.A', isTrue); 115 expect(classDocComment == 'test.A', isTrue);
115 116
116 // Test for linking to parameter [A] 117 // Test for linking to parameter [A]
117 var methodMirror = classMirror.methods['doThis']; 118 var methodMirror = classMirror.methods['doThis'];
118 var methodParameterDocComment = fixReference('A', libraryMirror, 119 var methodParameterDocComment = fixReference('A', libraryMirror,
119 classMirror, methodMirror).children.first.text; 120 classMirror, methodMirror).children.first.text;
120 expect(methodParameterDocComment == 'test.A.doThis#A', isTrue); 121 expect(methodParameterDocComment == 'test.A.doThis#A', isTrue);
121 122
122 // Testing trying to refer to doThis function 123 // Testing trying to refer to doThis function
123 var methodDocComment = fixReference('doThis', libraryMirror, 124 var methodDocComment = fixReference('doThis', libraryMirror,
124 classMirror, methodMirror).children.first.text; 125 classMirror, methodMirror).children.first.text;
125 expect(methodDocComment == 'test.A.doThis', isTrue); 126 expect(methodDocComment == 'test.A.doThis', isTrue);
126 127
127 // Testing something with no reference 128 // Testing something with no reference
128 var libraryDocComment = fixReference('foobar', libraryMirror, 129 var libraryDocComment = fixReference('foobar', libraryMirror,
129 classMirror, methodMirror).children.first.text; 130 classMirror, methodMirror).children.first.text;
130 expect(libraryDocComment == 'foobar', isTrue); 131 expect(libraryDocComment == 'foobar', isTrue);
131 })).whenComplete(() => temporaryDir.deleteSync(recursive: true)); 132 })).whenComplete(() => temporaryDir.deleteSync(recursive: true));
132 }); 133 });
133 }); 134 });
134 } 135 }
OLDNEW
« no previous file with comments | « pkg/barback/test/asset_test.dart ('k') | pkg/http/test/multipart_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698