git.fiddlerwoaroof.com
Browse code

chore: fix tests

Edward Langley authored on 03/11/2023 05:00:48
Showing 3 changed files
... ...
@@ -154,14 +154,18 @@
154 154
                                 ref
155 155
                                 nil)))))
156 156
 
157
+(defparameter *want-delta* nil)
157 158
 (defgeneric extract-object (object)
158 159
   (:method ((object loose-ref))
159 160
     (extract-loose-object (ref-repo object)
160 161
                           (loose-ref-file object)
161 162
                           object))
162 163
   (:method ((object packed-ref))
163
-    (resolve-delta object
164
-                   (data-lens.lenses:view *object-data-lens*
165
-                                          (extract-object-from-pack (packed-ref-pack object)
166
-                                                                    (packed-ref-offset object)
167
-                                                                    object)))))
164
+    (let ((maybe-delta (data-lens.lenses:view *object-data-lens*
165
+                                              (extract-object-from-pack (packed-ref-pack object)
166
+                                                                        (packed-ref-offset object)
167
+                                                                        object))))
168
+      (if *want-delta*
169
+          maybe-delta
170
+          (resolve-delta object
171
+                         maybe-delta)))))
... ...
@@ -5,7 +5,8 @@
5 5
   (:export
6 6
    #:ensure-ref
7 7
    #:repository
8
-   #:component))
8
+   #:component
9
+   #:*want-delta*))
9 10
 
10 11
 (defpackage :fwoar.cl-git.types
11 12
   (:use :cl )
... ...
@@ -192,7 +192,8 @@
192 192
                     :pack pack-file))))
193 193
 
194 194
 (fiveam:def-test pack-files-offsets ()
195
-  (let* ((expectations-file
195
+  (let* ((fwoar.cl-git:*want-delta* t)
196
+         (expectations-file
196 197
            (asdf:system-relative-pathname
197 198
             :co.fwoar.cl-git/tests
198 199
             "tests/sample-git-objects/pack-a0533639fdee4493fdbfc1b701872ace63b95e5f.delta-bases"))
... ...
@@ -279,22 +280,20 @@
279 280
 
280 281
 (fiveam:def-test pack-file-apply-delta-commands ()
281 282
   (flet ((test-ref (ref)
282
-           (let* ((extracted-ref
283
-                    (fwoar.cl-git::extract-object
284
-                     (fwoar.cl-git::packed-ref :fwoar.cl-git.git-objects.pack-2 ref)))
285
-                  (base-desc (fwoar.cl-git::base extracted-ref))
286
-                  (pack (car (fwoar.cl-git::pack-files *fake-repo-2*)))
287
-                  (expectations-file
283
+           (let* ((expectations-file
288 284
                     (asdf:system-relative-pathname
289 285
                      :co.fwoar.cl-git/tests
290 286
                      (format nil "tests/sample-git-objects/blob-~a-fixture"
291
-                             (subseq ref 0 8))))
287
+                             (subseq ref 0 7))))
292 288
                   (expectations
293 289
                     (alexandria:read-file-into-byte-vector expectations-file)))
294 290
              (5am:is
295 291
               (serapeum:vector=
296 292
                expectations
297
-               (fwoar.cl-git::trace-bases pack extracted-ref))))))
293
+               (fwoar.cl-git::data
294
+                (fwoar.cl-git::extract-object
295
+                 (fwoar.cl-git::packed-ref :fwoar.cl-git.git-objects.pack-2 ref))))))))
296
+
298 297
     (test-ref "87c2b9b2dfaa1fbf66b3fe88d3a925593886b159")
299 298
 
300 299
     (test-ref "9776df71b5ddf298c56e99b7291f9e68906cf049")