 36af74cb25
			
		
	
	36af74cb25
	
	
	
		
			
			Some manual changes done to the library were lost with this update. They will be added in the next commit.
		
			
				
	
	
		
			101 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # This set of tests exercises the serialization/deserialization and code copy
 | |
| # functions in the library. It does not use UTF or JIT.
 | |
| 
 | |
| #forbid_utf
 | |
| 
 | |
| # Compile several patterns, push them onto the stack, and then write them
 | |
| # all to a file.
 | |
| 
 | |
| #pattern push
 | |
| 
 | |
| /(?<NAME>(?&NAME_PAT))\s+(?<ADDR>(?&ADDRESS_PAT))
 | |
|   (?(DEFINE)
 | |
|   (?<NAME_PAT>[a-z]+)
 | |
|   (?<ADDRESS_PAT>\d+)
 | |
|   )/x
 | |
| /^(?:((.)(?1)\2|)|((.)(?3)\4|.))$/i
 | |
| 
 | |
| #save testsaved1
 | |
| 
 | |
| # Do it again for some more patterns.
 | |
| 
 | |
| /(*MARK:A)(*SKIP:B)(C|X)/mark
 | |
| /(?:(?<n>foo)|(?<n>bar))\k<n>/dupnames
 | |
| 
 | |
| #save testsaved2
 | |
| #pattern -push
 | |
| 
 | |
| # Reload the patterns, then pop them one by one and check them.
 | |
| 
 | |
| #load testsaved1
 | |
| #load testsaved2
 | |
| 
 | |
| #pop info
 | |
|     foofoo             
 | |
|     barbar
 | |
|     
 | |
| #pop mark
 | |
|     C
 | |
| \= Expect no match     
 | |
|     D 
 | |
|     
 | |
| #pop
 | |
|     AmanaplanacanalPanama   
 | |
| 
 | |
| #pop info
 | |
|     metcalfe 33
 | |
|     
 | |
| # Check for an error when different tables are used.
 | |
| 
 | |
| /abc/push,tables=1
 | |
| /xyz/push,tables=2
 | |
| #save testsaved1
 | |
| 
 | |
| #pop
 | |
|     xyz
 | |
| 
 | |
| #pop
 | |
|     abc
 | |
| 
 | |
| #pop should give an error
 | |
|     pqr
 | |
|     
 | |
| /abcd/pushcopy
 | |
|     abcd
 | |
|     
 | |
| #pop
 | |
|     abcd 
 | |
| 
 | |
| #pop should give an error
 | |
| 
 | |
| /abcd/push
 | |
| #popcopy
 | |
|     abcd
 | |
|     
 | |
| #pop
 | |
|     abcd 
 | |
|     
 | |
| /abcd/push
 | |
| #save testsaved1
 | |
| #pop should give an error
 | |
| 
 | |
| #load testsaved1
 | |
| #popcopy 
 | |
|     abcd
 | |
|     
 | |
| #pop
 | |
|     abcd
 | |
| 
 | |
| #pop should give an error
 | |
| 
 | |
| /abcd/pushtablescopy
 | |
|     abcd
 | |
| 
 | |
| #popcopy 
 | |
|     abcd
 | |
|     
 | |
| #pop
 | |
|     abcd 
 | |
| 
 | |
| # End of testinput20
 |