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

Unified Diff: third_party/pkg/angular/test/angular_spec.dart

Issue 257423008: Update all Angular libs (run update_all.sh). (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 8 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: third_party/pkg/angular/test/angular_spec.dart
diff --git a/third_party/pkg/angular/test/angular_spec.dart b/third_party/pkg/angular/test/angular_spec.dart
index 69b427b7297c55f014dc7d500a2311df2cbbf9cf..26c023deb145520cf9c7b24a43666ddbe8088eb4 100644
--- a/third_party/pkg/angular/test/angular_spec.dart
+++ b/third_party/pkg/angular/test/angular_spec.dart
@@ -1,7 +1,10 @@
library angular_spec;
+import 'dart:mirrors';
+
import '_specs.dart';
import 'package:angular/utils.dart';
+import 'package:angular/tools/symbol_inspector/symbol_inspector.dart';
main() {
describe('angular.dart unittests', () {
@@ -40,4 +43,232 @@ main() {
}).toThrow('Unknown function type, expecting 0 to 5 args.');
});
});
+
+ describe('symbols', () {
+ it('should not export unknown symbols from animate', () {
+ LibraryInfo libraryInfo;
+ try {
+ libraryInfo = getSymbolsFromLibrary("angular.animate");
+ } on UnimplementedError catch (e) {
+ return; // Not implemented, quietly skip.
+ }
+
+ var ALLOWED_NAMES = [
+ "angular.animate.AbstractNgAnimate",
+ "angular.animate.AnimationLoop",
+ "angular.animate.AnimationModule",
+ "angular.animate.AnimationOptimizer",
+ "angular.animate.CssAnimate",
+ "angular.animate.CssAnimationMap",
+ "angular.animate.NgAnimate",
+ "angular.animate.NgAnimateChildren",
+ "angular.animate.CssAnimation",
+ "angular.animate.AnimationFrame",
+ "angular.animate.AnimationList",
+ "angular.animate.LoopedAnimation"
+ ];
+ assertSymbolNamesAreOk(ALLOWED_NAMES, libraryInfo);
+
+ });
+
+ it('should not export unknown symbols from angular', () {
+ // Test is failing? Add new symbols to the "ALLOWED_NAMES" list below.
+ // But make sure that you intend to export the symbol!
+ // Questions? Talk to @jbdeboer
+
+ // There is a bug at the intersection of the angular library,
+ // dart2js and findLibrary(). http://dartbug.com/18302
+ try {
+ currentMirrorSystem().findLibrary(const Symbol("angular"));
+ } catch (e) {
+ return;
+ }
+
+ LibraryInfo libraryInfo;
+ try {
+ libraryInfo = getSymbolsFromLibrary("angular");
+ } on UnimplementedError catch (e) {
+ return; // Not implemented, quietly skip.
+ }
+
+ var ALLOWED_NAMES = [
+ "angular.app.AngularModule",
+ "angular.app.Application",
+ "angular.core.annotation.ShadowRootAware",
+ "angular.core.annotation_src.AttachAware",
+ "angular.core.annotation_src.Component",
+ "angular.core.annotation_src.Controller",
+ "angular.core.annotation_src.Decorator",
+ "angular.core.annotation_src.DetachAware",
+ "angular.core.annotation_src.Directive",
+ "angular.core.annotation_src.DirectiveAnnotation",
+ "angular.core.annotation_src.Formatter",
+ "angular.core.annotation_src.Injectable",
+ "angular.core.annotation_src.NgAttr",
+ "angular.core.annotation_src.NgCallback",
+ "angular.core.annotation_src.NgOneWay",
+ "angular.core.annotation_src.NgOneWayOneTime",
+ "angular.core.annotation_src.NgTwoWay",
+ "angular.core.dom_internal.Animate",
+ "angular.core.dom_internal.Animation",
+ "angular.core.dom_internal.AnimationResult",
+ "angular.core.dom_internal.BoundViewFactory",
+ "angular.core.dom_internal.BrowserCookies",
+ "angular.core.dom_internal.Compiler",
+ "angular.core.dom_internal.Cookies",
+ "angular.core.dom_internal.DirectiveMap",
+ "angular.core.dom_internal.ElementProbe",
+ "angular.core.dom_internal.EventHandler",
+ "angular.core.dom_internal.Http",
+ "angular.core.dom_internal.HttpBackend",
+ "angular.core.dom_internal.HttpDefaultHeaders",
+ "angular.core.dom_internal.HttpDefaults",
+ "angular.core.dom_internal.HttpInterceptor",
+ "angular.core.dom_internal.HttpInterceptors",
+ "angular.core.dom_internal.HttpResponse",
+ "angular.core.dom_internal.HttpResponseConfig",
+ "angular.core.dom_internal.LocationWrapper",
+ "angular.core.dom_internal.NgElement",
+ "angular.core.dom_internal.NoOpAnimation",
+ "angular.core.dom_internal.NullTreeSanitizer",
+ "angular.core.dom_internal.RequestErrorInterceptor",
+ "angular.core.dom_internal.RequestInterceptor",
+ "angular.core.dom_internal.Response",
+ "angular.core.dom_internal.ResponseError",
+ "angular.core.dom_internal.TemplateCache",
+ "angular.core.dom_internal.UrlRewriter",
+ "angular.core.dom_internal.View",
+ "angular.core.dom_internal.ViewCache",
+ "angular.core.dom_internal.ViewFactory",
+ "angular.core.dom_internal.ViewPort",
+ "angular.core_internal.CacheStats",
+ "angular.core_internal.ExceptionHandler",
+ "angular.core_internal.Interpolate",
+ "angular.core_internal.RootScope",
+ "angular.core_internal.Scope",
+ "angular.core_internal.ScopeDigestTTL",
+ "angular.core_internal.ScopeEvent",
+ "angular.core_internal.ScopeStats",
+ "angular.core_internal.ScopeStatsConfig",
+ "angular.core_internal.ScopeStatsEmitter",
+ "angular.core_internal.VmTurnZone",
+ "angular.core.parser.dynamic_parser.ClosureMap",
+ "angular.core.parser.Parser",
+ "angular.directive.AHref",
+ "angular.directive.ContentEditable",
+ "angular.directive.DecoratorFormatter",
+ "angular.directive.InputCheckbox",
+ "angular.directive.InputDateLike",
+ "angular.directive.InputNumberLike",
+ "angular.directive.InputRadio",
+ "angular.directive.InputSelect",
+ "angular.directive.InputTextLike",
+ "angular.directive.NgAttribute",
+ "angular.directive.NgBaseCss",
+ "angular.directive.NgBind",
+ "angular.directive.NgBindHtml",
+ "angular.directive.NgBindTemplate",
+ "angular.directive.NgBindTypeForDateLike",
+ "angular.directive.NgBooleanAttribute",
+ "angular.directive.NgClass",
+ "angular.directive.NgClassEven",
+ "angular.directive.NgClassOdd",
+ "angular.directive.NgCloak",
+ "angular.directive.NgControl",
+ "angular.directive.NgEvent",
+ "angular.directive.NgFalseValue",
+ "angular.directive.NgForm",
+ "angular.directive.NgHide",
+ "angular.directive.NgIf",
+ "angular.directive.NgInclude",
+ "angular.directive.NgModel",
+ "angular.directive.NgModelConverter",
+ "angular.directive.NgModelEmailValidator",
+ "angular.directive.NgModelMaxLengthValidator",
+ "angular.directive.NgModelMaxNumberValidator",
+ "angular.directive.NgModelMinLengthValidator",
+ "angular.directive.NgModelMinNumberValidator",
+ "angular.directive.NgModelNumberValidator",
+ "angular.directive.NgModelPatternValidator",
+ "angular.directive.NgModelRequiredValidator",
+ "angular.directive.NgModelUrlValidator",
+ "angular.directive.NgNonBindable",
+ "angular.directive.NgNullControl",
+ "angular.directive.NgNullForm",
+ "angular.directive.NgPluralize",
+ "angular.directive.NgRepeat",
+ "angular.directive.NgShow",
+ "angular.directive.NgSource",
+ "angular.directive.NgStyle",
+ "angular.directive.NgSwitch",
+ "angular.directive.NgSwitchDefault",
+ "angular.directive.NgSwitchWhen",
+ "angular.directive.NgTemplate",
+ "angular.directive.NgTrueValue",
+ "angular.directive.NgUnless",
+ "angular.directive.NgValidator",
+ "angular.directive.NgValue",
+ "angular.directive.OptionValue",
+ "angular.formatter_internal.Currency",
+ "angular.formatter_internal.Date",
+ "angular.formatter_internal.Filter",
+ "angular.formatter_internal.Json",
+ "angular.formatter_internal.LimitTo",
+ "angular.formatter_internal.Lowercase",
+ "angular.formatter_internal.Arrayify",
+ "angular.formatter_internal.Number",
+ "angular.formatter_internal.OrderBy",
+ "angular.formatter_internal.Stringify",
+ "angular.formatter_internal.Uppercase",
+ "angular.introspection.ngDirectives",
+ "angular.introspection.ngInjector",
+ "angular.introspection.ngProbe",
+ "angular.introspection.ngQuery",
+ "angular.introspection.ngScope",
+ "angular.routing.NgBindRoute",
+ "angular.routing.ngRoute",
+ "angular.routing.NgRouteCfg",
+ "angular.routing.NgRoutingHelper",
+ "angular.routing.NgRoutingUsePushState",
+ "angular.routing.NgView",
+ "angular.routing.RouteInitializer",
+ "angular.routing.RouteInitializerFn",
+ "angular.routing.RouteProvider",
+ "angular.routing.RouteViewFactory",
+ "angular.routing.RoutingModule",
+ "angular.watch_group.PrototypeMap",
+ "angular.watch_group.ReactionFn",
+ "angular.watch_group.Watch",
+ "change_detection.AvgStopwatch",
+ "change_detection.FieldGetterFactory",
+ "di.CircularDependencyError",
+ "di.FactoryFn",
+ "di.Injector",
+ "di.InvalidBindingError",
+ "di.Module",
+ "di.NoProviderError",
+ "di.ObjectFactory",
+ "di.TypeFactory",
+ "di.Visibility",
+ "route.client.Routable",
+ "route.client.Route",
+ "route.client.RouteEnterEvent",
+ "route.client.RouteEnterEventHandler",
+ "route.client.RouteEvent",
+ "route.client.RouteHandle",
+ "route.client.RouteImpl",
+ "route.client.RouteLeaveEvent",
+ "route.client.RouteLeaveEventHandler",
+ "route.client.RoutePreEnterEvent",
+ "route.client.RoutePreEnterEventHandler",
+ "route.client.Router",
+ "route.client.RouteStartEvent",
+ "url_matcher.UrlMatch",
+ "url_matcher.UrlMatcher"
+ ];
+
+ assertSymbolNamesAreOk(ALLOWED_NAMES, libraryInfo);
+ });
+ });
}
+
« no previous file with comments | « third_party/pkg/angular/test/_specs_spec.dart ('k') | third_party/pkg/angular/test/animate/animation_loop_spec.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698