From 6469fd7fa7b4fff26d9ae5d0592ff37d592820a6 Mon Sep 17 00:00:00 2001 From: John Bintz Date: Fri, 15 Apr 2011 15:02:36 -0400 Subject: [PATCH] more small changes --- README.md | 28 ++++++++++++++++++++++++++++ bin/backbone-generator | 4 ++-- spec/bin/backbone-generator_spec.rb | 8 ++++---- templates/collection.js.erb | 2 +- templates/collection_spec.js.erb | 6 +++--- 5 files changed, 38 insertions(+), 10 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..00de40e --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +*Not done yet!* + +Currently only works with Rails-ish projects and with Jasmine & Jammit. I'm selfish. + +### Models + +`backbone-generate model Admin::User` creates an AdminUserModel object in: + +* `public/javascripts/models/admin/user.js` +* `spec/javascripts/models/admin/user_spec.js` + +### View + +`backbone-generate view Admin::User` creates an AdminUserView object in: + +* `public/javascripts/views/admin/user.js` +* `spec/javascripts/views/admin/user_spec.js` +* `app/views/admin/user.jst` + +### Collection + +`backbone-generate collection Admin::User` creates an AdminUsersCollection object in: + +* `public/javascripts/collections/admin/users.js` +* `spec/javascripts/collections/admin/users_spec.js` + +Please add more and make it more friendly with things that are not Rails, Jasmine, and Jammit! + diff --git a/bin/backbone-generator b/bin/backbone-generator index 2c4b563..3377a34 100755 --- a/bin/backbone-generator +++ b/bin/backbone-generator @@ -39,8 +39,8 @@ class BackboneGenerator < Thor desc 'collection Namespaced::Name', "Create a collection" def collection(name) @name = name - template('collection.js.erb', "public/javascripts/collections/#{underscore_name}.js") - template('collection_spec.js.erb', "spec/javascripts/collections/#{underscore_name}_spec.js") + template('collection.js.erb', "public/javascripts/collections/#{underscore_name}s.js") + template('collection_spec.js.erb', "spec/javascripts/collections/#{underscore_name}s_spec.js") end end diff --git a/spec/bin/backbone-generator_spec.rb b/spec/bin/backbone-generator_spec.rb index ee26c48..8aa1d0c 100644 --- a/spec/bin/backbone-generator_spec.rb +++ b/spec/bin/backbone-generator_spec.rb @@ -41,12 +41,12 @@ describe 'backbone-generator' do it "should generate the collection files" do system %{bin/backbone-generator collection Section::Collection} - File.file?(collection = 'public/javascripts/collections/section/collection.js').should be_true - File.file?(spec = 'spec/javascripts/collections/section/collection_spec.js').should be_true + File.file?(collection = 'public/javascripts/collections/section/collections.js').should be_true + File.file?(spec = 'spec/javascripts/collections/section/collections_spec.js').should be_true - File.read(collection).should match(/SectionCollection/) + File.read(collection).should match(/SectionCollectionsCollection/) File.read(collection).should match(%r{section/collection}) - File.read(spec).should match(/SectionCollection/) + File.read(spec).should match(/SectionCollectionsCollection/) end end end diff --git a/templates/collection.js.erb b/templates/collection.js.erb index c73cbd3..a6fc771 100644 --- a/templates/collection.js.erb +++ b/templates/collection.js.erb @@ -1,3 +1,3 @@ -var <%= object_name %>Collection = Backbone.Collection.extend({ +var <%= object_name %>sCollection = Backbone.Collection.extend({ url: '/<%= underscore_name %>' }); diff --git a/templates/collection_spec.js.erb b/templates/collection_spec.js.erb index c825a16..bb09394 100644 --- a/templates/collection_spec.js.erb +++ b/templates/collection_spec.js.erb @@ -1,4 +1,4 @@ -describe('<%= object_name %>Collection', function() { +describe('<%= object_name %>sCollection', function() { var collection, server; beforeEach(function() { @@ -10,7 +10,7 @@ describe('<%= object_name %>Collection', function() { }); it('should fetch records from the API', function() { - collection = new <%= object_name %>Collection(); + collection = new <%= object_name %>sCollection(); server.respondWith('GET', '<%= underscore_name %>', [ 200, { 'Content-type': 'application/json' }, "[{id: 1}]" ]); collection.fetch() @@ -18,4 +18,4 @@ describe('<%= object_name %>Collection', function() { expect(collection.length).toEqual(1); }); -}); +}s);