<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,4 +1,4 @@
-Copyright (c) 2008 Miles Georgi, Azimux.com, nopugs.com Consulting
+Copyright (c) 2008-2009 Miles Georgi, Azimux.com, nopugs.com Consulting
 
 Permission is hereby granted, free of charge, to any person
 obtaining a copy of this software and associated documentation</diff>
      <filename>MIT_LICENSE.txt</filename>
    </modified>
    <modified>
      <diff>@@ -24,7 +24,7 @@ task :prep_test do
 
       puts `git clone --bare git://github.com/azimux/engines.git engines.git`
 
-      %w(acts_as_list).each do |p|
+      %w(acts_as_list ssl_requirement).each do |p|
         puts `git clone --bare git://github.com/rails/#{p}.git #{p}.git`
       end
 </diff>
      <filename>Rakefile</filename>
    </modified>
    <modified>
      <diff>@@ -130,6 +130,56 @@ module Externals
       end
     end
 
+    def test_update_with_missing_subproject
+      Dir.chdir File.join(root_dir, 'test') do
+        Dir.chdir 'workdir' do
+          `mkdir update`
+          Dir.chdir 'update' do
+            source = repository_dir('svn')
+
+            if windows?
+              source = source.gsub(/\\/, &quot;/&quot;)
+            end
+            source = &quot;file:///#{source}&quot;
+
+
+            puts &quot;About to checkout #{source}&quot;
+            Ext.run &quot;checkout&quot;, &quot;--svn&quot;, source, 'rails_app'
+
+            Dir.chdir 'rails_app' do
+              pretests = proc do
+                assert File.exists?('.svn')
+                assert !File.exists?(File.join('vendor', 'plugins', 'ssl_requirement', 'lib'))
+                assert File.read(&quot;.externals&quot;) =~ /rails/
+                assert File.read(&quot;.externals&quot;) !~ /ssl_requirement/
+              end
+
+              pretests.call
+
+              #add a project
+              Dir.chdir File.join(root_dir, 'test') do
+                Dir.chdir File.join('workdir', &quot;rails_app&quot;) do
+                  #install a new project
+                  Ext.run &quot;install&quot;, File.join(root_dir, 'test', 'cleanreps', 'ssl_requirement.git')
+
+                  SvnProject.add_all
+
+                  puts `svn commit -m &quot;added another subproject (ssl_requirement)&quot;`
+                end
+              end
+
+              pretests.call
+
+              #update the project and make sure ssl_requirement was added and checked out
+              Ext.run &quot;update&quot;
+              assert File.read(&quot;.externals&quot;) =~ /ssl_requirement/
+              assert File.exists?(File.join('vendor', 'plugins', 'ssl_requirement', 'lib'))
+            end
+          end
+        end
+      end
+    end
+
     def test_export_with_subproject
       Dir.chdir File.join(root_dir, 'test') do
         Dir.chdir 'workdir' do</diff>
      <filename>test/test_checkout_with_subprojects_svn.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>d84571fb210eb1f4d31ca4b5a3e2e696f538c737</id>
    </parent>
  </parents>
  <author>
    <name>Miles Georgi</name>
    <email>azimux@gmail.com</email>
  </author>
  <url>http://github.com/azimux/externals/commit/9f6b94b1e9bc7123ff5019aae6c2b148f2c2a106</url>
  <id>9f6b94b1e9bc7123ff5019aae6c2b148f2c2a106</id>
  <committed-date>2009-10-02T16:33:02-07:00</committed-date>
  <authored-date>2009-10-02T16:33:02-07:00</authored-date>
  <message>Added test for updating a project to which a new subproject has been added elsewhere since last checked out</message>
  <tree>09bde5e430fe386da88e86dc0e133ab642573c25</tree>
  <committer>
    <name>Miles Georgi</name>
    <email>azimux@gmail.com</email>
  </committer>
</commit>
