Regression Test Tanach - HodofHod/SE-Modifications GitHub Wiki

Regression Testing for Syntax Script:

Tanach:

Vayikra with verse:  
`[t Lev. 10:7]` == [t Lev. 10:7]  
`[t Lev. 10:7 rulm]` == [t Lev. 10:7 rulm]  
`[t Lev. 10:7 ulm]` == [t Lev. 10:7 ulm]  
`[t Lev. 10:7 rlm]` == [t Lev. 10:7 rlm]  
`[t Lev. 10:7 lm]` == [t Lev. 10:7 lm]  
`[t Lev. 10:7 rum]` == [t Lev. 10:7 rum]  
`[t Lev. 10:7 um]` == [t Lev. 10:7 um]  
`[t Lev. 10:7 rm]` == [t Lev. 10:7 rm]  
`[t Lev. 10:7 m]` == [t Lev. 10:7 m]  
`[t Lev. 10:7 rul]` == [t Lev. 10:7 rul]  
`[t Lev. 10:7 ul]` == [t Lev. 10:7 ul]  
`[t Lev. 10:7 rl]` == [t Lev. 10:7 rl]  
`[t Lev. 10:7 l]` == [t Lev. 10:7 l]  
`[t Lev. 10:7 ru]` == [t Lev. 10:7 ru]  
`[t Lev. 10:7 u]` == [t Lev. 10:7 u]  
`[t Lev. 10:7 r]` == [t Lev. 10:7 r]  

Vayikra without verse:  
`[t Lev. 10]` == [t Lev. 10]  
`[t Lev. 10 rulm]` == [t Lev. 10 rulm]  
`[t Lev. 10 ulm]` == [t Lev. 10 ulm]  
`[t Lev. 10 rlm]` == [t Lev. 10 rlm]  
`[t Lev. 10 lm]` == [t Lev. 10 lm]  
`[t Lev. 10 rum]` == [t Lev. 10 rum]  
`[t Lev. 10 um]` == [t Lev. 10 um]  
`[t Lev. 10 rm]` == [t Lev. 10 rm]  
`[t Lev. 10 m]` == [t Lev. 10 m]  
`[t Lev. 10 rul]` == [t Lev. 10 rul]  
`[t Lev. 10 ul]` == [t Lev. 10 ul]  
`[t Lev. 10 rl]` == [t Lev. 10 rl]  
`[t Lev. 10 l]` == [t Lev. 10 l]  
`[t Lev. 10 ru]` == [t Lev. 10 ru]  
`[t Lev. 10 u]` == [t Lev. 10 u]  
`[t Lev. 10 r]` == [t Lev. 10 r] 


Bereshit (special case, so make sure it works)  with verse:  
`[t Gen. 25:10]` == [t Gen. 25:10]  
`[t Gen. 25:10 l]` == [t Gen. 25:10 l]  
`[t Gen. 25:10 u]` == [t Gen. 25:10 u]  

Bereshit (special case, so make sure it works)  without verse:  
`[t Gen. 25]` == [t Gen. 25]  
`[t Gen. 25 l]` == [t Gen. 25 l]  
`[t Gen. 25 u]` == [t Gen. 25 u]  

Bereshit Invalid chapter (with verse):  
`[t Gen. 55:10]` == [t Gen. 55:10]   
`[t Gen. 55:10 rulm]` == [t Gen. 55:10 rulm]  

Bereshit Invalid chapter (without verse):  
`[t Gen. 55]` == [t Gen. 55]  
`[t Gen. 55 rulm]` == [t Gen. 55 rulm]  


 Bereshit Chapter 1, test to see if it correctly parses 1 as chapter and not multivolume option:  
`[t gen 1:4 l]` == [t gen 1:4 l]  
`[t gen 1:4 u]` == [t gen 1:4 u]  
`[t gen 1:4]` == [t gen 1:4]  

Chapter only:  
`[t gen 1 l]` == [t gen 1 l]  
`[t gen 1 u]` == [t gen 1 u]  
`[t gen 1]` == [t gen 1] 


Vayikra invalid chapter (with verse):  
`[t Lev. 50:4]` == [t Lev. 50:4]  
`[t Lev. 50:4 l]` == [t Lev. 50:4 l]  
`[t Lev. 50:4 u]` == [t Lev. 50:4 u]  
 

Vayikra invalid chapter (without verse):  
`[t Lev. 50]` == [t Lev. 50]  
`[t Lev. 50 l]` == [t Lev. 50 l]  
`[t Lev. 50 u]` == [t Lev. 50 u]  

 For when pass 5 starts working:  
`[t Shemoth 4:5]` == [t Shemoth 4:5]  
`[t Shemoth 4:5 l]` == [t Shemoth 4:5 l]  
`[t Shemoth 4:5 u]` == [t Shemoth 4:5 u]  


  Multivolume Shmuel, Chapter 1:  
`[t shmuel 1 1 u]` == [t shmuel 1 1 u]  
`[t shmuel 1 1 l]` == [t shmuel 1 1 l]  
`[t shmuel 1 1]` == [t shmuel 1 1] 
`[t shmuel 2 1 u]` == [t shmuel 2 1 u]  
`[t shmuel 2 1 l]` == [t shmuel 1 1 l]  
`[t shmuel 2 1]` == [t shmuel 2 1] 

 Multivolume Shmuel I 1:1 :  
`[t shm 1 1 1 u]` == [t shm 1 1 1 u]  
`[t shm 1 1 1 l]` == [t shm 1 1 1 l]  
`[t shm 1 1 1]` == [t shm 1 1 1]  
`[t shm 2 1 1 u]` == [t shm 2 1 1 u]  
`[t shm 2 1 1 l]` == [t shm 2 1 1 l]  
`[t shm 2 1 1]` == [t shm2 1 1] 

Multivolume number before title:
`[t 1 king 1 u]` == [t 1 king 1 u]  
`[t 1 king 1 l]` == [t 1 king 1 l]  
`[t 1 king 1]` == [t 1 king 1]   
`[t 2 king 1 u]` == [t 2 king 1 u]  
`[t 2 king 1 l]` == [t 2 king 1 l]  
`[t 2 king 1]` == [t 2 king 1]  

Multivolume, volume number before title with no space:   
`[t 1king 1 1 u]` == [t 1king 1 1 u]  
`[t 1king 1 1 l]` == [t 1king 1 1 l]  
`[t 1king 1 1]` == [t 1king 1 1]  
`[t 1king 2 1 u]` == [t 1king 2 1 u]  
`[t 1king 2 1 l]` == [t 1king 2 1 l]  
`[t 1king 2 1]` == [t 1king 2 1]  

Multivolume number after title, no space:
`[t king2 1 1 u]` == [t king2 1 1 u]  
`[t king2 1 1 l]` == [t king2 1 1 l]  
`[t king2 1 1]` == [t king2 1 1]   
`[t king1 2 1 u]` == [t king1 2 1 u]  
`[t king1 2 1 l]` == [t king1 2 1 l]  
`[t king1 2 1]` == [t king1 2 1]  

 Multivolume, too many numbers should fail:  
`[t kings 1 2 3 4 u]` == [t kings 1 2 3 4 u]  
`[t kings 1 2 3 4 l]` == [t kings 1 2 3 4 l]  
`[t kings 1 2 3 4]` == [t kings 1 2 3 4]  

 Non-multivolume wrong number of numbers:  
`[t deut. 1 2 3 4 u]` == [t deut. 1 2 3 4 u]  
`[t deut. 1 2 3 4 l]` == [t deut. 1 2 3 4 l]  
`[t deut. 1 2 3 4]` == [t deut. 1 2 3 4]  

Odds and Ends:  
`[t 1sam 1 1 5 ml]` == [t 1sam 1 1 5 ml]  
`[t gen 1 2 3 l]` == [t gen 1 2 3 l]  
  `[tking2 1 1 u]` == [tking2 1 1 u]  

Should work:
[t sam 1 1 1] [t sam 1 1 1] [t 1 sam 1] [t 1 sam 1 1] [t ber 1 1] [t ber 1] 
Shouldn't:
[t 1 sam] [t sam 1] [t 1 ber 1 1] [t 1 ber 1] [t ber 1 1 1]
Shouldn't, but does:
[t 1 sam 1 1 1]