File tree Expand file tree Collapse file tree 1 file changed +18
-2
lines changed 
gix-revision/tests/revision/spec/parse/navigate Expand file tree Collapse file tree 1 file changed +18
-2
lines changed Original file line number Diff line number Diff line change 1- use  gix_revision:: { spec,  spec:: parse:: delegate:: Traversal } ; 
2- 
31use  crate :: spec:: parse:: { parse,  try_parse,  PeelToOwned  as  PeelTo } ; 
2+ use  gix_revision:: { spec,  spec:: parse:: delegate:: Traversal } ; 
43
54#[ test]  
65fn  single_is_first_parent ( )  { 
@@ -190,6 +189,23 @@ fn invalid_object_type() {
190189    ) ; 
191190} 
192191
192+ #[ test]  
193+ fn  invalid_caret_without_previous_refname ( )  { 
194+     let  rec = parse ( r"^^" ) ; 
195+     assert_eq ! ( rec. calls,  2 ) ; 
196+     assert_eq ! ( rec. kind,  Some ( gix_revision:: spec:: Kind :: ExcludeReachable ) ) ; 
197+     assert_eq ! ( 
198+         rec. traversal, 
199+         [ Traversal :: NthParent ( 1 ) ] , 
200+         "This can trip off an implementation as it's actually invalid, but looks valid" 
201+     ) ; 
202+ 
203+     for  revspec in  [ "^^^HEAD" ,  "^^HEAD" ]  { 
204+         let  err = try_parse ( revspec) . unwrap_err ( ) ; 
205+         assert ! ( matches!( err,  spec:: parse:: Error :: UnconsumedInput  { input}  if  input == "HEAD" ) ) ; 
206+     } 
207+ } 
208+ 
193209#[ test]  
194210fn  incomplete_escaped_braces_in_regex_are_invalid ( )  { 
195211    let  err = try_parse ( r"@^{/a\{1}}" ) . unwrap_err ( ) ; 
 
 
   
 
     
   
   
          
    
    
     
    
      
     
     
    You can’t perform that action at this time.
  
 
    
  
    
      
        
     
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments