Add regress test for the bug from r605.
authorgraham.gower@gmail.com <graham.gower@gmail.com@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Mon, 21 Feb 2011 04:45:33 +0000 (04:45 +0000)
committergraham.gower@gmail.com <graham.gower@gmail.com@e8e0d7a0-c8d9-11dd-a880-a1081c7ac358>
Mon, 21 Feb 2011 04:45:33 +0000 (04:45 +0000)
git-svn-id: http://opkg.googlecode.com/svn/trunk@607 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358

tests/regress/Makefile
tests/regress/filehash.py [new file with mode: 0755]

index c438a160c0d59fbef15a820ce4a1834569b25d3c..bb9d21278b350a43d172f550514b5cace607939f 100644 (file)
@@ -1,7 +1,8 @@
 PYTHON=/usr/bin/python3
 REGRESSION_TESTS=issue26.py issue31.py issue45.py issue46.py \
                        issue50.py issue51.py issue55.py issue58.py \
-                       issue72.py
+                       issue72.py \
+                       filehash.py
 
 regress:
        @for test in $(REGRESSION_TESTS); do \
diff --git a/tests/regress/filehash.py b/tests/regress/filehash.py
new file mode 100755 (executable)
index 0000000..e6cbe62
--- /dev/null
@@ -0,0 +1,35 @@
+#!/usr/bin/python3
+
+import os
+import opk, cfg, opkgcl
+
+opk.regress_init()
+
+open("asdf", "w").close()
+a = opk.Opk(Package="a", Version="1.0", Architecture="all")
+a.write(data_files=["asdf"])
+b = opk.Opk(Package="b", Version="1.0", Architecture="all")
+b.write(data_files=["asdf"])
+os.unlink("asdf")
+opkgcl.install("a_1.0_all.opk")
+
+if not opkgcl.is_installed("a"):
+       print(__file__, ": Package 'a' not installed.")
+       exit(False)
+
+if not os.path.exists("{}/asdf".format(cfg.offline_root)):
+       print(__file__, ": asdf not created.")
+       exit(False)
+
+opkgcl.install("b_1.0_all.opk", "--force-overwrite")
+
+if "{}/asdf".format(cfg.offline_root) not in opkgcl.files("b"):
+       print(__file__, ": asdf not claimed by ``b''.")
+       exit(False)
+
+if "{}/asdf".format(cfg.offline_root) in opkgcl.files("a"):
+       print(__file__, ": asdf is still claimed by ``a''.")
+       exit(False)
+
+opkgcl.remove("b")
+opkgcl.remove("a")