]> source.dussan.org Git - redmine.git/commitdiff
scm: mercurial: add adapter entry test (#14361)
authorToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Sun, 2 Feb 2014 04:43:17 +0000 (04:43 +0000)
committerToshi MARUYAMA <marutosijp2@yahoo.co.jp>
Sun, 2 Feb 2014 04:43:17 +0000 (04:43 +0000)
git-svn-id: http://svn.redmine.org/redmine/trunk@12756 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/unit/lib/redmine/scm/adapters/mercurial_adapter_test.rb

index 67c7745b8f6ff48496e1131d44fd78aac966885f..1810a71416e4513bd83042e159a6c49464585351 100644 (file)
@@ -265,6 +265,47 @@ begin
         assert_equal Time.gm(2001, 2, 1, 9, 0, 0), readme.lastrev.time
       end
 
+      def test_entry
+        entry = @adapter.entry()
+        assert_equal "", entry.path
+        assert_equal "dir", entry.kind
+        entry = @adapter.entry('')
+        assert_equal "", entry.path
+        assert_equal "dir", entry.kind
+        assert_nil @adapter.entry('invalid')
+        assert_nil @adapter.entry('/invalid')
+        assert_nil @adapter.entry('/invalid/')
+        assert_nil @adapter.entry('invalid/invalid')
+        assert_nil @adapter.entry('invalid/invalid/')
+        assert_nil @adapter.entry('/invalid/invalid')
+        assert_nil @adapter.entry('/invalid/invalid/')
+        ["README", "/README"].each do |path|
+          ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev|
+            entry = @adapter.entry(path, rev)
+            assert_equal "README", entry.path
+            assert_equal "file", entry.kind
+            assert_equal '0', entry.lastrev.revision
+            assert_equal '0885933ad4f6', entry.lastrev.identifier
+          end
+        end
+        ["sources", "/sources", "/sources/"].each do |path|
+          ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev|
+            entry = @adapter.entry(path, rev)
+            assert_equal "sources", entry.path
+            assert_equal "dir", entry.kind
+          end
+        end
+        ["sources/watchers_controller.rb", "/sources/watchers_controller.rb"].each do |path|
+          ["0", "0885933ad4f6", "0885933ad4f68d77c2649cd11f8311276e7ef7ce"].each do |rev|
+            entry = @adapter.entry(path, rev)
+            assert_equal "sources/watchers_controller.rb", entry.path
+            assert_equal "file", entry.kind
+            assert_equal '0', entry.lastrev.revision
+            assert_equal '0885933ad4f6', entry.lastrev.identifier
+          end
+        end
+      end
+
       def test_locate_on_outdated_repository
         assert_equal 1, @adapter.entries("images", 0).size
         assert_equal 2, @adapter.entries("images").size