             expect(options).toHaveNumberWithinRange('limit',1,1)
             done()
 
-    it "creates a Collection property", ->
-        Model = Lanes.Test.DummyModel
+    it "creates a Collection property even when the base is abstract", ->
+        class Base
+            constructor: -> super
+            abstractClass: true
+        Lanes.Models.Base.extend(Base)
+        class Model
+            constructor: -> super
+        debugger
+        Model = Base.extend(Model)
         expect(Model.Collection::model).toEqual(Model)
-    
+
+
     it "loads using where", (done)->
         Model = Lanes.Test.DummyModel
         syncSucceedWith([

            expect(model.sync).toHaveBeenCalledWith('patch', model, jasmine.any(Object))
            expect(model.foo).toEqual('a new foo value')
            done()
            
    it "can be fetched", (done)->
        model = Lanes.Test.makeModel({
            props:

                id: 'integer'
                foo: 'string'
                bar: 'string'

        }, { foo: 'one, two, three'} )
        expect(model.isDirty()).toBeTrue()
        expect(model.unsavedAttributes()).toEqual( foo: 'one, two, three' )
