angular2
Version:
Angular 2 - a web framework for modern web apps
1 lines • 7.41 kB
Source Map (JSON)
{"version":3,"sources":["xhr_mock.js"],"names":[],"mappings":"AAAA;AAAA,KAAK,iBAAiB,AAAC,CAAC,MAAK,QAAQ;SAArC,EAAC,GAAE,YAAqB;AAAE,oBAAwB;IAAE,AAA9B,CAAC;AAAvB,WAAS,CAAT,EAAC,KAAI,CAAO,KAAG,AAAS,CAAC;CAAgC,CAAC;;;;;EAAlD,IAAE,EAAV,EAAC,yCAAoB,CAAA,OAAM,AAAC,6BAAkB,CACtC,CAAA,0CAAqB,mDAA2B,CAAA,0CAAqB,GAAK,EAAC,OAAM,yCAAmB,CAAC,AAD/D,CACgE;SAD9G,EAAC,8CAAoB,CAAA,OAAM,AAAC,kCAAkB,CACtC,CAAA,+CAAqB,wDAA2B,CAAA,+CAAqB,GAAK,EAAC,OAAM,8CAAmB,CAAC,AAD/D,CACgE;AAAtG,OAAG;AAAG,cAAU;AAAG,MAAE;AAAG,aAAS;SADzC,EAAC,wCAAoB,CAAA,OAAM,AAAC,4BAAkB,CACtC,CAAA,yCAAqB,kDAA2B,CAAA,yCAAqB,GAAK,EAAC,OAAM,wCAAmB,CAAC,AAD/D,CACgE;AACtG,UAAM;AAAG,YAAQ;AAAG,iBAAa;AAAG,gBAAY;SAFxD,EAAC,yCAAoB,CAAA,OAAM,AAAC,6BAAkB,CACtC,CAAA,0CAAqB,mDAA2B,CAAA,0CAAqB,GAAK,EAAC,OAAM,yCAAmB,CAAC,AAD/D,CACgE;AAEtG,iBAAa;AAAG,UAAM;AAH9B,AAAI,EAAA,UAKG,SAAM,QAAM,CAKL,AAAD,CAAG;AACZ,AAXJ,gBAAc,iBAAiB,AAAC,UAAkB,KAAK,MAAmB,CAW/D;AACP,KAAG,cAAc,EAAI,GAAC,CAAC;AACvB,KAAG,aAAa,EAAI,CAAA,UAAS,OAAO,AAAC,EAAC,CAAC;AACvC,KAAG,UAAU,EAAI,GAAC,CAAC;AACrB,AAfsC,CAAA;AAAxC,AAAI,EAAA,mBAAoC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC;AAiB3B,IAAE,CAAF,UAAI,GAAE,AAAQ,CAAoB;AAChC,AAAI,MAAA,CAAA,OAAM,EAAI,IAAI,gBAAc,AAAC,CAAC,GAAE,CAAC,CAAC;AACtC,cAAU,KAAK,AAAC,CAAC,IAAG,UAAU,CAAG,QAAM,CAAC,CAAC;AACzC,SAAO,CAAA,OAAM,WAAW,AAAC,EAAC,CAAC;EAC7B;AAEA,OAAK,CAAL,UAAO,GAAE,AAAQ,CAAG,CAAA,QAAO,AAAQ,CAAG;AACpC,AAAI,MAAA,CAAA,WAAU,EAAI,IAAI,aAAW,AAAC,CAAC,GAAE,CAAG,SAAO,CAAC,CAAC;AACjD,cAAU,KAAK,AAAC,CAAC,IAAG,cAAc,CAAG,YAAU,CAAC,CAAC;EACnD;AAEA,KAAG,CAAH,UAAK,GAAE,AAAQ,CAAG,CAAA,QAAO,AAAQ,CAAG;AAClC,aAAS,IAAI,AAAC,CAAC,IAAG,aAAa,CAAG,IAAE,CAAG,SAAO,CAAC,CAAC;EAClD;AAEA,MAAI,CAAJ,UAAM,AAAD,CAAG;AACN,OAAI,IAAG,UAAU,OAAO,IAAM,EAAA,CAAG;AAC/B,UAAM,IAAI,cAAY,AAAC,CAAC,8BAA6B,CAAC,CAAC;IACzD;AAAA,AAEA,KAAG;AACD,AAAI,QAAA,CAAA,OAAM,EAAI,CAAA,WAAU,SAAS,AAAC,CAAC,IAAG,UAAU,CAAG,EAAA,CAAC,CAAC;AACrD,SAAG,gBAAgB,AAAC,CAAC,OAAM,CAAC,CAAC;IAC/B,QAAS,IAAG,UAAU,OAAO,EAAI,EAAA,EAAE;AAEnC,OAAG,+BAA+B,AAAC,EAAC,CAAC;EACvC;AAEA,+BAA6B,CAA7B,UAA+B,AAAD,CAAG;AAC/B,OAAI,IAAG,cAAc,OAAO,IAAM,EAAA;AAAG,aAAM;AAAA,AAEvC,MAAA,CAAA,IAAG,EAAI,GAAC,CAAC;AACb,QAAS,GAAA,CAAA,CAAA,EAAI,EAAA,CAAG,CAAA,CAAA,EAAI,CAAA,IAAG,cAAc,OAAO,CAAG,CAAA,CAAA,EAAE,CAAG;AAClD,AAAI,QAAA,CAAA,WAAU,EAAI,CAAA,IAAG,cAAc,CAAE,CAAA,CAAC,CAAC;AACvC,gBAAU,KAAK,AAAC,CAAC,IAAG,CAAG,CAAA,WAAU,IAAI,CAAC,CAAC;IACzC;AAAA,AAEA,QAAM,IAAI,cAAY,AAAC,EAAC,wBAAwB,EAAC,CAAA,WAAU,KAAK,AAAC,CAAC,IAAG,CAAG,KAAG,CAAC,EAAG,CAAC;EAClF;AAEA,gBAAc,CAAd,UAAgB,OAAM,AAAiB,CAAG;AACxC,AAAI,MAAA,CAAA,GAAE,EAAI,CAAA,OAAM,IAAI,CAAC;AAErB,OAAI,IAAG,cAAc,OAAO,EAAI,EAAA,CAAG;AACjC,AAAI,QAAA,CAAA,WAAU,EAAI,CAAA,IAAG,cAAc,CAAE,CAAA,CAAC,CAAC;AACvC,SAAI,WAAU,IAAI,GAAK,IAAE,CAAG;AAC1B,kBAAU,OAAO,AAAC,CAAC,IAAG,cAAc,CAAG,YAAU,CAAC,CAAC;AACnD,cAAM,SAAS,AAAC,CAAC,WAAU,SAAS,CAAC,CAAC;AACtC,eAAM;MACR;AAAA,IACF;AAAA,AAEA,OAAI,UAAS,SAAS,AAAC,CAAC,IAAG,aAAa,CAAG,IAAE,CAAC,CAAG;AAC/C,AAAI,QAAA,CAAA,QAAO,EAAI,CAAA,UAAS,IAAI,AAAC,CAAC,IAAG,aAAa,CAAG,IAAE,CAAC,CAAC;AACrD,YAAM,SAAS,AAAC,CAAC,cAAa,AAAC,CAAC,QAAO,CAAC,CAAC,CAAC;AAC1C,aAAM;IACR;AAAA,AAEA,QAAM,IAAI,cAAY,AAAC,EAAC,qBAAqB,EAAC,IAAE,EAAG,CAAC;EACtD;AAAA,KAvE2B,IAAE,CAJyB;AADxD,KAAK,eAAe,AAAC,qCACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,wCACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,WAArB,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,sCACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,WAArB,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,iDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAwDC,eAAc,GAxDQ;EAAC,CAAC,CAAC,CAAC;AADrD,AAAI,EAAA,kBA+EJ,SAAM,gBAAc,CAIN,GAAE,CAAG;AACf,KAAG,IAAI,EAAI,IAAE,CAAC;AACd,KAAG,UAAU,EAAI,CAAA,cAAa,UAAU,AAAC,EAAC,CAAC;AAC7C,AAtFsC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC;AAwF3B,SAAO,CAAP,UAAS,QAAO,AAAQ,CAAG;AACzB,OAAI,OAAM,AAAC,CAAC,QAAO,CAAC,CAAG;AACrB,SAAG,UAAU,OAAO,AAAC,EAAC,iBAAiB,EAAC,CAAA,IAAG,IAAI,EAAG,CAAC;IACrD,KAAO;AACL,SAAG,UAAU,QAAQ,AAAC,CAAC,QAAO,CAAC,CAAC;IAClC;AAAA,EACF;AAEA,WAAS,CAAT,UAAW,AAAD,CAAoB;AAC5B,SAAO,CAAA,IAAG,UAAU,QAAQ,CAAC;EAC/B;AAAA,KAlGmF;AAArF,KAAK,eAAe,AAAC,kDACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AADrD,AAAI,EAAA,eAqGJ,SAAM,aAAW,CAGH,GAAE,AAAQ,CAAG,CAAA,QAAO,AAAQ,CAAG;AACzC,KAAG,IAAI,EAAI,IAAE,CAAC;AACd,KAAG,SAAS,EAAI,SAAO,CAAC;AAC1B,AA3GsC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC,sBAAwD;AAArF,KAAK,eAAe,AAAC,4BACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAD1B,eAAc,KAAO,WAArB,eAAc,KAAO,UAC4B;EAAC,CAAC,CAAC,CAAC;AA4GrD","file":"angular2/src/mock/xhr_mock.js","sourcesContent":["import {XHR} from 'angular2/src/services/xhr';\nimport {List, ListWrapper, Map, MapWrapper} from 'angular2/src/facade/collection';\nimport {isBlank, isPresent, normalizeBlank, BaseException} from 'angular2/src/facade/lang';\nimport {PromiseWrapper, Promise} from 'angular2/src/facade/async';\n\nexport class MockXHR extends XHR {\n _expectations: List<_Expectation>;\n _definitions: Map;\n _requests: List<Promise>;\n\n constructor() {\n super();\n this._expectations = [];\n this._definitions = MapWrapper.create();\n this._requests = [];\n }\n\n get(url: string): Promise<string> {\n var request = new _PendingRequest(url);\n ListWrapper.push(this._requests, request);\n return request.getPromise();\n }\n\n expect(url: string, response: string) {\n var expectation = new _Expectation(url, response);\n ListWrapper.push(this._expectations, expectation);\n }\n\n when(url: string, response: string) {\n MapWrapper.set(this._definitions, url, response);\n }\n\n flush() {\n if (this._requests.length === 0) {\n throw new BaseException('No pending requests to flush');\n }\n\n do {\n var request = ListWrapper.removeAt(this._requests, 0);\n this._processRequest(request);\n } while (this._requests.length > 0);\n\n this.verifyNoOustandingExpectations();\n }\n\n verifyNoOustandingExpectations() {\n if (this._expectations.length === 0) return;\n\n var urls = [];\n for (var i = 0; i < this._expectations.length; i++) {\n var expectation = this._expectations[i];\n ListWrapper.push(urls, expectation.url);\n }\n\n throw new BaseException(`Unsatisfied requests: ${ListWrapper.join(urls, ', ')}`);\n }\n\n _processRequest(request: _PendingRequest) {\n var url = request.url;\n\n if (this._expectations.length > 0) {\n var expectation = this._expectations[0];\n if (expectation.url == url) {\n ListWrapper.remove(this._expectations, expectation);\n request.complete(expectation.response);\n return;\n }\n }\n\n if (MapWrapper.contains(this._definitions, url)) {\n var response = MapWrapper.get(this._definitions, url);\n request.complete(normalizeBlank(response));\n return;\n }\n\n throw new BaseException(`Unexpected request ${url}`);\n }\n}\n\nclass _PendingRequest {\n url: string;\n completer;\n\n constructor(url) {\n this.url = url;\n this.completer = PromiseWrapper.completer();\n }\n\n complete(response: string) {\n if (isBlank(response)) {\n this.completer.reject(`Failed to load ${this.url}`);\n } else {\n this.completer.resolve(response);\n }\n }\n\n getPromise(): Promise<string> {\n return this.completer.promise;\n }\n}\n\nclass _Expectation {\n url: string;\n response: string;\n constructor(url: string, response: string) {\n this.url = url;\n this.response = response;\n }\n}\n"]}