diff --git a/db/migrate/20100705164950_change_changes_path_length_limit.rb b/db/migrate/20100705164950_change_changes_path_length_limit.rb new file mode 100644 index 0000000..5f34d5d --- /dev/null +++ b/db/migrate/20100705164950_change_changes_path_length_limit.rb @@ -0,0 +1,11 @@ +class ChangeChangesPathLengthLimit < ActiveRecord::Migration + def self.up + change_column :changes, :path, :text, :default => "", :null => false + change_column :changes, :from_path, :text + end + + def self.down + change_column :changes, :path, :string, :default => "", :null => false + change_column :changes, :from_path, :string + end +end diff --git a/test/fixtures/repositories/git_repository.tar.gz b/test/fixtures/repositories/git_repository.tar.gz index 48966da30bf58b5d804ee9b51deb0dcce9da4edb..8158d583244a12064c1d48d20eb64427d56d3159 100644 GIT binary patch literal 19452 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 true).length + assert_equal 13, @adapter.revisions('',nil,nil,:all => true).length end def test_annotate diff --git a/test/unit/repository_git_test.rb b/test/unit/repository_git_test.rb index 71b3e4d..dad5610 100644 --- a/test/unit/repository_git_test.rb +++ b/test/unit/repository_git_test.rb @@ -34,8 +34,8 @@ class RepositoryGitTest < ActiveSupport::TestCase @repository.fetch_changesets @repository.reload - assert_equal 12, @repository.changesets.count - assert_equal 21, @repository.changes.count + assert_equal 13, @repository.changesets.count + assert_equal 22, @repository.changes.count commit = @repository.changesets.find(:first, :order => 'committed_on ASC') assert_equal "Initial import.\nThe repository contains 3 files.", commit.comments @@ -57,10 +57,10 @@ class RepositoryGitTest < ActiveSupport::TestCase # Remove the 3 latest changesets @repository.changesets.find(:all, :order => 'committed_on DESC', :limit => 3).each(&:destroy) @repository.reload - assert_equal 9, @repository.changesets.count + assert_equal 10, @repository.changesets.count @repository.fetch_changesets - assert_equal 12, @repository.changesets.count + assert_equal 13, @repository.changesets.count end else puts "Git test repository NOT FOUND. Skipping unit tests !!!"