github.com/vertgenlab/gonomics@v1.0.0/cmd/DEPRECATED/mouseRecon/mouseRecon_test.go (about) 1 package main 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/vertgenlab/gonomics/dna" 8 "github.com/vertgenlab/gonomics/exception" 9 "github.com/vertgenlab/gonomics/fasta" 10 "github.com/vertgenlab/gonomics/fileio" 11 ) 12 13 func TestAllPossible(t *testing.T) { 14 var err error 15 var mouse fasta.Fasta = fasta.Fasta{Name: "mm10"} 16 var rat fasta.Fasta = fasta.Fasta{Name: "rn7"} 17 var hamster fasta.Fasta = fasta.Fasta{Name: "criGriChoV2"} 18 var squirrel fasta.Fasta = fasta.Fasta{Name: "speTri2"} 19 var species []fasta.Fasta 20 var m, r, h, s dna.Base //the values of the current base for each species 21 m = dna.A //mouse is fixed 22 var possibleBases []dna.Base = []dna.Base{dna.A, dna.C, dna.G, dna.T, dna.N, dna.Gap} 23 24 // given that mouse is A, we will now go through all possible combinations 25 for _, r = range possibleBases { 26 for _, h = range possibleBases { 27 for _, s = range possibleBases { 28 mouse.Seq = append(mouse.Seq, m) 29 rat.Seq = append(rat.Seq, r) 30 hamster.Seq = append(hamster.Seq, h) 31 squirrel.Seq = append(squirrel.Seq, s) 32 } 33 } 34 } 35 36 species = []fasta.Fasta{mouse, rat, hamster, squirrel} 37 fasta.Write("testdata/allPossible.fa", species) 38 39 mouseReconMraMle("testdata/allPossible.fa", "testdata/test.mraMleMouseBias.fa", "testdata/4d.mod", 0.0, 0.8) 40 if !fileio.AreEqual("testdata/test.mraMleMouseBias.fa", "testdata/expected.mraMleMouseBias.fa") { 41 t.Errorf("Error in mouseRecon, mouse-biased mleMra reconstruction. Output was not as expected.") 42 } else { 43 err = os.Remove("testdata/test.mraMleMouseBias.fa") 44 exception.PanicOnErr(err) 45 } 46 47 mouseReconMraMle("testdata/allPossible.fa", "testdata/test.mraMleMouseBias0.fa", "testdata/4d.mod", 0.0, 0.0) 48 if !fileio.AreEqual("testdata/test.mraMleMouseBias0.fa", "testdata/expected.mraMleMouseBias0.fa") { 49 t.Errorf("Error in mouseRecon, mouse-biased mleMra reconstruction. Output was not as expected.") 50 } else { 51 err = os.Remove("testdata/test.mraMleMouseBias0.fa") 52 exception.PanicOnErr(err) 53 err = os.Remove("testdata/allPossible.fa") //remove allPossible once all tests have passed. 54 exception.PanicOnErr(err) 55 } 56 }