Thread (13 messages) 13 messages, 2 authors, 2016-06-15

Re: [PATCH v7 4/4] t1006: add tests for git cat-file --literally

flat view

From: Karthik Nayak <hidden>
Date: 2016-06-15 23:04:24


On April 9, 2015 2:04:08 AM GMT+05:30, Eric Sunshine [off-list ref] wrote:
On Wed, Apr 8, 2015 at 1:42 PM, karthik nayak [off-list ref]
wrote:
quoted
On 04/08/2015 02:19 AM, Eric Sunshine wrote:
quoted
On Sat, Apr 4, 2015 at 1:44 AM, Karthik Nayak
[off-list ref]
quoted
quoted
wrote:
quoted
Signed-off-by: Karthik Nayak <redacted>
---
diff --git a/t/t1006-cat-file.sh b/t/t1006-cat-file.sh
index ab36b1e..5b74044 100755
--- a/t/t1006-cat-file.sh
+++ b/t/t1006-cat-file.sh
@@ -296,4 +308,19 @@ test_expect_success '%(deltabase) reports
packed
quoted
quoted
quoted
delta bases' '
         }
  '

+bogus_type="bogus"
+bogus_sha1=$(git hash-object -t $bogus_type --literally -w
--stdin
quoted
quoted
quoted
</dev/null)
+
+test_expect_success "Type of broken object is correct" '
+       echo $bogus_type >expect &&
+       git cat-file -t --literally $bogus_sha1 >actual &&
+       test_cmp expect actual
+'
+
+test_expect_success "Size of broken object is correct" '
+       echo "0" >expect &&
Zero is such a common fallback value when things go wrong that it
may
quoted
quoted
not be the best choice for this test. Consequently, it might be
better
quoted
quoted
to create the bogus object with non-zero length. Take a look at how
'hello_length' and 'hello_sha1' are computed elsewhere in this
script
quoted
quoted
for inspiration.
The first part of this patch contains tests which make use of
'hello_length'
quoted
adn 'hello_sha1', but I get what you're saying, will look into it.
Thanks.

Just to be sure we're on the same page, I wasn't suggesting re-using
'hello_size' and 'hello_sha1', but merely to use that as an example of
how to avoid hard-coding the length of your non-zero-length bogus
object. So, something like this, perhaps:

   bogus_content='bogus'
   bogus_size=$(strlen "$bogus_content")
   bogus_sha1=$(echo_without_newline "$bogus_content" |
       git hash-object -t $bogus_type --literally -w --stdin)
   ...
   test_expect_success "Size of broken object is correct" '
       echo $bogus_size >expect &&
       ...
Yes, I had done exactly what you suggested here. Thanks 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help