Commit graph

425 commits

Author SHA1 Message Date
Vojta Jina
b08e2be64c Pass the toKeyValue() test - parsing flags 2010-10-16 22:10:01 -07:00
Vojta Jina
46c6406b25 Add test for toKeyValue() - true values should be composed to flag 2010-10-16 22:10:01 -07:00
Vojta Jina
732bcd8a36 Add missing tests for toKeyValue() function 2010-10-16 22:10:01 -07:00
Misko Hevery
ce49c361d7 attempting to fix ie on jquery build failure 2010-10-16 22:08:58 -07:00
Misko Hevery
b96f736951 fixed date formater and make it work on ie 2010-10-16 21:43:28 -07:00
Igor Minar
f8865459d5 adding an extra DateToUTC assertion 2010-10-16 21:31:23 -07:00
Vojta Jina
312f93574e Fixed filter date test - remove dependency on machine timezone
It would be better to separate the time-zone logic to a separate unit and test just this logic.
This logic is simply convert minutes to HH:MM, the source of time-zone is from date object...
2010-10-16 21:29:30 -07:00
Misko Hevery
ff52f47537 Fix unicode parsing Close #56 2010-10-15 14:06:30 -07:00
Misko Hevery
a36964799b fixed lint warnings and one flaky test 2010-10-15 13:44:53 -07:00
Misko Hevery
d320e3d2c3 Updated JSTD 2010-10-15 11:58:55 -07:00
Misko Hevery
de66a319b4 removed unneeded function rethrow from scope which was interfering with the test rethrow function 2010-10-15 10:55:58 -07:00
Misko Hevery
7903f4d940 use new Function instead of eval()
Close #52
2010-10-14 21:49:59 -07:00
Misko Hevery
a7da160c1d publish $route since we bind it with $route.current in ng:include 2010-10-14 15:44:14 -07:00
Misko Hevery
d9c8284ea5 removed stray console.log 2010-10-14 14:52:12 -07:00
Igor Minar
692333f2f5 temporary backwards compatibility patch for 2010-10-14 12:36:29 -07:00
Elliott Sprehn
03df6cbddb New Angular Scenario runner and DSL system with redesigned HTML UI.
Uses the Jasmine syntax for tests, ex:

describe('widgets', function() {
  it('should verify that basic widgets work', function(){
    navigateTo('widgets.html');
    input('text.basic').enter('Carlos');
    expect(binding('text.basic')).toEqual('Carlos');
    input('text.basic').enter('Carlos Santana');
    expect(binding('text.basic')).not().toEqual('Carlos Boozer');
    input('text.password').enter('secret');
    expect(binding('text.password')).toEqual('secret');
    expect(binding('text.hidden')).toEqual('hiddenValue');
    expect(binding('gender')).toEqual('male');
    input('gender').select('female');
    expect(binding('gender')).toEqual('female');
  });
});

Note: To create new UI's implement the interface shown in angular.scenario.ui.Html.
2010-10-14 09:47:39 -07:00
Misko Hevery
0f104317df Added support for date filter
Date filter now supports:
yyyy: four digit year
  yy: two digit year
  MM: two digit month
  dd: two digit day of month
  HH: two digit hour in 0-23
  KK: two digit hour in 0-12
  mm: two digit minute
  ss: two digit second
   a: am/pm
   Z: four digit timezone offset

example {{ timestamp | date:'yyyy-MM-dd HH:mm:ss' }} becomes 2010-10-13 14:45:23
2010-10-13 23:15:40 -07:00
Igor Minar
1cc85a77cf fixing reference issue in angular-mocks.js 2010-10-13 17:42:55 -07:00
Igor Minar
80c64b48f3 fix Rakefile - add Injector.js to :compile 2010-10-13 17:42:55 -07:00
Igor Minar
818b507d3c updating file list for the :package rake task
- removing angular-scenario.css (it's already inlined in the js)
- adding angular-mocks.js
2010-10-13 17:42:49 -07:00
Igor Minar
075bdf2316 adding angular logo 2010-10-13 17:32:45 -07:00
Misko Hevery
805753dba4 fixed issue where date copy creates an object instead of date 2010-10-13 12:47:10 -07:00
Misko Hevery
3ab49538a4 fixed issue where ng:bind would not reset value if expression returned undefined 2010-10-13 10:51:16 -07:00
Misko Hevery
2cb9497d02 Fixed issue where compiler would pass in detached text node if previous markup would have removed it. 2010-10-12 21:52:04 -07:00
Misko Hevery
d9abfe8a7e Introduced injector and $new to scope, and injection into link methods and controllers
- added angular.injector(scope, services, instanceCache) which returns inject
    - inject method can return, instance, or call function which have $inject
      property
    - initialize services with $creation=[eager|eager-publish] this means that
      only some of the services are now globally accessible
  - upgraded $become on scope to use injector hence respect the $inject property
    for injection
    - $become should not be run multiple times and will most likely be removed
      in future version
  - added $new on scope to create a child scope
     - $inject is respected on constructor function
  - simplified scopes so that they no longer have separate __proto__ for
    parent, api, behavior and instance this should speed up execution since
    scope will now create one __proto__ chain per scope (not three).

BACKWARD COMPATIBILITY WARNING:
  - services now need to have $inject instead of inject property for proper
    injection this breaks backward compatibility
  - not all services are now published into root scope
    (only: $location, $cookie, $window)
  - if you have widget/directive which uses services on scope
    (such as this.$xhr), you will now have to inject that service in
    (as it is not published on the root scope anymore)
2010-10-12 16:33:06 -07:00
Igor Minar
fbfd160316 adding :package task to the rake file 2010-10-12 16:28:46 -07:00
Igor Minar
7ed2191b07 fixing missing semicolon 2010-10-12 14:48:59 -07:00
Igor Minar
451a711343 fix global namespace polution with invalidWidgets 2010-10-13 04:37:46 +08:00
Igor Minar
70ff7a2639 fix memory leak caused by leftbehind $invalidWidgets references
- ng:switch should not clean up $invalidWidgets
- $invalidWidgets should be clean up after each eval
- add missing docs
2010-10-13 04:37:46 +08:00
Igor Minar
7e47a2d016 temparary backaward compatibility patch for Controller.init
- feedback relies on *Controller.init to be called when a Controller is
being created. this with previous angular refactoring this is not happening
in angular any more. To make it easier for feedback to transition, this
change makes $become call controller's init method if present.

- call to Controller.init from $route.updateRoute was removed. this was
left there by accident during the previous refactoring.
2010-10-13 04:37:45 +08:00
Vojta Jina
3bd4abba6b Fixed calculator examples
* Fixed wrong reference to jquery library, and old method names (scope.$set, scope.$eval), added scope.$init() call...
* Changed to use angular-debug.js
* use simple assignments
2010-10-09 23:04:09 -07:00
Shyam Seshadri
8490bb921b Fix bug with Lexer not recognizing exponential values and values starting with dots 2010-10-08 20:41:19 -07:00
Misko Hevery
e3ea980c81 fixed leaking constants to gloabal scope 2010-10-08 16:25:12 -07:00
Misko Hevery
772e32c220 change ng:controller to create new scope hence allow nesting 2010-10-08 16:23:26 -07:00
Shyam Seshadri
c30807d141 Change angular-mocks to throw errors on unexpected gets in the format JSTD now expects 2010-10-07 09:34:22 -07:00
Igor Minar
a930e782a5 removing anchor spec and improving jqLite.trigger() method
- removing the last anchor spec because it can't run reliably in all browsers
- improving jqLite.trigger() method
2010-10-06 10:05:51 -07:00
Elliott Sprehn
8e40e7070d Fix bug in IE where clone removes whitespace nodes. 2010-10-05 07:12:13 +08:00
Igor Minar
81052d4a62 fixed lint warnings 2010-10-04 09:00:09 -07:00
Igor Minar
328ff6c926 adding missing spec for 'A' widget 2010-10-04 08:53:24 -07:00
Igor Minar
87f9a4c566 angular-mocks code should access all global functions via angular
mocks must use angular.foo because the final build will hide all
the normally accessible functions within an anonymous closure.
2010-10-01 16:06:32 -07:00
Igor Minar
8248e77a7b 'A' tag widget and ng:click propagation change
* added a widget for A (anchor) tag, that modifies the default behavior
  and prevent default action (location change and page reload) for tags
  with empty href attribute
* stopped event propagation for all ng:click handlers
2010-10-01 07:44:46 +08:00
Igor Minar
0af763dcec properly handle event's stopPropagation() and preventDefault() method in IE 2010-10-01 07:44:45 +08:00
Igor Minar
eb8d46d380 Differentiate between flags and empty keys in $location.hashSearch
* #foo?key=var&flag&emptyKey= should parse into
  {key:'val', flag: true, emptyKey: ''}
* added docs and spec for parseKeyValue function
2010-09-29 09:52:03 -07:00
Igor Minar
984acdc627 Reworked the cookie synchronization between cookie service, $browser and document.cookie.
Now we finally correctly handle situations when browser refuses to set a cookie, due to
storage quota or other (file:// protocol) limitations.
2010-09-27 15:10:05 -07:00
Igor Minar
3eec8c1a51 Properly initialize cookie service in order to preserve existing cookies
- previously the poller initialized the cookie cache too late which
  was causing previously existing cookies to be deleted by cookie service
- refactored the poller api so that the addPollFn returns the added fn
- fixed older cookie service tests
- removed "this.$onEval(PRIORITY_LAST, update);" because it is not needed
2010-09-26 23:54:31 -07:00
Misko Hevery
9171a2b2b5 Added support for functions to $orderBy method
http://github.com/angular/angular.js/issues#issue/23
2010-09-26 19:43:39 +02:00
Misko Hevery
27868f17de cleanup underscore.js form rakefile 2010-09-23 13:53:38 +02:00
Bolek Szewczyk
0d5407bc1e make date validator use the Date object 2010-09-23 13:50:10 +02:00
Misko Hevery
db42221828 fix parseInt by adding radix so that it does not default to octal if the string starts with 0 2010-09-23 13:28:33 +02:00
Bolek Szewczyk
af030b888e delete unused files (e.g. swfobject and underscore libs) 2010-09-23 12:38:28 +02:00