<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>app_generators/rbiphonetest/templates/Classes/module.h.erb</filename>
    </added>
    <added>
      <filename>app_generators/rbiphonetest/templates/Classes/module.m.erb</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -26,7 +26,9 @@ class RbiphonetestGenerator &lt; RubiGen::Base
 
       # Create stubs
       m.template_copy_each [&quot;Rakefile&quot;]
-      m.file           &quot;dot_autotest&quot;, &quot;.autotest&quot;
+      m.file    &quot;dot_autotest&quot;, &quot;.autotest&quot;
+      m.template &quot;Classes/module.m.erb&quot;, &quot;Classes/#{module_name}.m&quot;
+      m.template &quot;Classes/module.h.erb&quot;, &quot;Classes/#{module_name}.h&quot;
       
       # Selecting a test framework
       case test_framework</diff>
      <filename>app_generators/rbiphonetest/rbiphonetest_generator.rb</filename>
    </modified>
    <modified>
      <diff>@@ -19,4 +19,17 @@ Feature: Generate, compile and test Objective-C classes with Ruby tests
     And file 'Classes/Person.h' is created
     And file 'spec/person_spec.rb' is created
     When I invoke task 'rake spec'
-    Then all 1 tests pass
+    Then all 1 examples pass
+
+  Scenario: Generate multiple models and its tests should pass
+    Given an existing rbiphonetest scaffold using options '' [called 'my_project']
+    When I invoke 'model' generator with arguments 'Person'
+    When I invoke 'model' generator with arguments 'Company'
+    Then file 'Classes/Person.m' is created
+    And file 'Classes/Person.h' is created
+    And file 'test/test_person.rb' is created
+    Then file 'Classes/Company.m' is created
+    And file 'Classes/Company.h' is created
+    And file 'test/test_company.rb' is created
+    When I invoke task 'rake test'
+    Then all 2 tests pass</diff>
      <filename>features/models.feature</filename>
    </modified>
    <modified>
      <diff>@@ -7,6 +7,10 @@ Feature: Created a new Objective-C project that can be tested by Ruby tests
     Given a safe folder
     When I execute rbiphonetest for project 'my_project' with options ''
     Then file 'Rakefile' is created
+    And file 'Classes/MyProject.h' is created
+    And file 'Classes/MyProject.m' is created
+    And file 'Classes/MyProject.m' contents does match /void Init_MyProject\(\) \{ \}/
+    And file 'Classes/MyProject.m' contents does match /#import &quot;MyProject.h&quot;/
     And Rakefile can display tasks successfully
     And file 'test/test_helper.rb' is created
   </diff>
      <filename>features/new_project.feature</filename>
    </modified>
    <modified>
      <diff>@@ -82,6 +82,15 @@ Then /^file with name matching '(.*)' is created/ do |pattern|
   end
 end
 
+Then /^file '(.*)' contents (does|does not) match \/(.*)\// do |file, does, regex|
+  in_project_folder do
+    actual_output = File.read(file)
+    (does == 'does') ?
+      actual_output.should(match(/#{regex}/)) :
+      actual_output.should_not(match(/#{regex}/))
+  end
+end
+
 Then /gem file '(.*)' and generated file '(.*)' should be the same/ do |gem_file, project_file|
   File.exists?(gem_file).should be_true
   File.exists?(project_file).should be_true
@@ -116,15 +125,6 @@ Then /^output (does|does not) match \/(.*)\// do |does, regex|
     actual_output.should_not(match(/#{regex}/)) 
 end
 
-Then /^contents of file '(.*)' (does|does not) match \/(.*)\// do |file, does, regex|
-  in_project_folder do
-    actual_output = File.read(file)
-    (does == 'does') ?
-      actual_output.should(match(/#{regex}/)) :
-      actual_output.should_not(match(/#{regex}/))
-  end
-end
-
 Then /^all (\d+) tests pass/ do |expected_test_count|
   expected = %r{^#{expected_test_count} tests, \d+ assertions, 0 failures, 0 errors}
   actual_output = File.read(@stdout)</diff>
      <filename>features/step_definitions/common_steps.rb</filename>
    </modified>
    <modified>
      <diff>@@ -7,7 +7,7 @@ require 'fileutils'
 
 # Must set before requiring generator libs.
 TMP_ROOT = File.dirname(__FILE__) + &quot;/tmp&quot; unless defined?(TMP_ROOT)
-PROJECT_NAME = &quot;myproject&quot; unless defined?(PROJECT_NAME)
+PROJECT_NAME = &quot;my_project&quot; unless defined?(PROJECT_NAME)
 app_root = File.join(TMP_ROOT, PROJECT_NAME)
 if defined?(APP_ROOT)
   APP_ROOT.replace(app_root)</diff>
      <filename>test/test_generator_helper.rb</filename>
    </modified>
    <modified>
      <diff>@@ -32,6 +32,8 @@ class TestRbIphoneTestGenerator &lt; Test::Unit::TestCase
     assert_directory_exists &quot;tasks&quot;
     assert_generated_file   &quot;.autotest&quot;
     assert_generated_file   &quot;Rakefile&quot;
+    assert_generated_file   &quot;Classes/MyProject.h&quot;
+    assert_generated_file   &quot;Classes/MyProject.m&quot;
     assert_generated_file   &quot;test/test_helper.rb&quot;
     assert_generated_file   &quot;script/generate&quot;
   end
@@ -43,6 +45,8 @@ class TestRbIphoneTestGenerator &lt; Test::Unit::TestCase
     assert_directory_exists &quot;tasks&quot;
     assert_generated_file   &quot;.autotest&quot;
     assert_generated_file   &quot;Rakefile&quot;
+    assert_generated_file   &quot;Classes/MyProject.h&quot;
+    assert_generated_file   &quot;Classes/MyProject.m&quot;
     assert_generated_file   &quot;spec/spec_helper.rb&quot;
     assert_generated_file   &quot;script/generate&quot;
   end</diff>
      <filename>test/test_rbiphonetest_generator.rb</filename>
    </modified>
  </modified>
  <removed type="array">
    <removed>
      <filename>test/test_rbiphonetest.rb</filename>
    </removed>
  </removed>
  <parents type="array">
    <parent>
      <id>62b095ac1232e76f5c3eaee9142c02ea078320d2</id>
    </parent>
  </parents>
  <author>
    <name>Dr Nic Williams</name>
    <email>drnicwilliams@gmail.com</email>
  </author>
  <url>http://github.com/drnic/rbiphonetest/commit/07b3388511281e88aa3f0cb1849bf3fdf355b31f</url>
  <id>07b3388511281e88aa3f0cb1849bf3fdf355b31f</id>
  <committed-date>2009-03-17T05:04:37-07:00</committed-date>
  <authored-date>2009-03-17T05:04:37-07:00</authored-date>
  <message>Finally, now support for 2+ models. rbiphonetest generator creates a common module .m/.h file with the bundle initialiser in it. Subsequent model files do not have bundle initialisers.</message>
  <tree>f08d6683cbe561c22e3b43e2a87dff021ad50431</tree>
  <committer>
    <name>Dr Nic Williams</name>
    <email>drnicwilliams@gmail.com</email>
  </committer>
</commit>
