[#398788] Constructor or a Method — Rubyist Rohit <lists@...>

Take for instance this code:

13 messages 2012/09/01

[#398896] how to sum element of array — Edward QU <lists@...>

dear all

19 messages 2012/09/04

[#398936] best coding for limiting a value — Regis d'Aubarede <lists@...>

A) result=value<min ? min : (value > max ? max : value)

17 messages 2012/09/04

[#398962] Long calculation & time limit — toto tartemolle <lists@...>

Hello,

17 messages 2012/09/05

[#398964] Compiling ruby from source on windows — GPad <peterpan105105@...>

Hi to all,=0AI'm trying to compile ruby on my windows 7. I have already a r=

10 messages 2012/09/05

[#398997] OpenURI open method problem — "Derek T." <lists@...>

The code I am referring to looks like this:

12 messages 2012/09/05

[#399002] Parsing through downloaded html — Sybren Kooistra <lists@...>

Hi all,

28 messages 2012/09/06

[#399012] "Hiding" pictures(and source code if it's possible) — "Damián M. González" <lists@...>

Ey guys, how are you?

11 messages 2012/09/06

[#399083] regix in grep or something like this — Ferdous ara <lists@...>

Hi

12 messages 2012/09/07

[#399206] please help me with making script — Charmaine Willemsen <lists@...>

In this example i like to parse birthday and sexe

11 messages 2012/09/11

[#399218] Pathname#to_str withdrawn in 1.9? — matt@... (Matt Neuburg)

Just getting started experimenting with Ruby 1.9 (1.9.3) and my scripts

13 messages 2012/09/12

[#399227] Breaking Down the Block — incag neato <lists@...>

Can someone please explain in plain english how this block treats the

20 messages 2012/09/13

[#399244] ruby Range to array that acts like time objects? — "Jermaine O." <lists@...>

Hello everybody,

15 messages 2012/09/13

[#399293] Ruby on Ubuntu 12.04 LST — Bojan Jordanovski <lists@...>

Hello everybody,

13 messages 2012/09/14

[#399298] wow, YAML / Psych in 1.9.3 is *slow*! — matt@... (Matt Neuburg)

I just started trying Ruby 1.9.3, coming from Ruby 1.8.7, and was

12 messages 2012/09/14

[#399304] Ruby 1.9.3 and OS X Mountain Lion — sto.mar@...

Hi all,

16 messages 2012/09/14

[#399343] Class variables or Class singleton variables? — "Damián M. González" <lists@...>

Guys, how are you?

18 messages 2012/09/15

[#399386] Ruby - is it worth the effort? — neomex <neomex@...>

Hello,

19 messages 2012/09/17
[#399406] Re: Ruby - is it worth the effort? — Roger Pack <lists@...> 2012/09/17

Unfortunately with Ruby for me it's typically "fun and fast development"

[#399409] Re: Ruby - is it worth the effort? — Peter Zotov <whitequark@...> 2012/09/17

Roger Pack писал 17.09.2012 22:06:

[#399491] Re: Ruby - is it worth the effort? — Robert Klemme <shortcutter@...> 2012/09/19

On Mon, Sep 17, 2012 at 8:20 PM, Peter Zotov <whitequark@whitequark.org> wr=

[#399421] Encoding question — Thomas Bednarz <lists@...>

I am new to ruby and play around with it a little bit at the moment. I

17 messages 2012/09/17

[#399441] Bug or feature — Damjan Rems <lists@...>

There has probably been some discussion about this problem so sorry if I

13 messages 2012/09/18

[#399451] Class variables — Aleksander Ciesielski <neomex@...>

Is it obligatory to use instance variables in classes? Can't we just

17 messages 2012/09/18

[#399479] Ruby SQL Select Sum 2 Columns? — Courtney Fay <lists@...>

I have the following definition which is looking at an apache database,

12 messages 2012/09/18

[#399556] still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...>

Hi,

28 messages 2012/09/20
[#399570] Re: still learning by doing - connecting rooms in a game — Henry Maddocks <hmaddocks@...> 2012/09/20

[#399574] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Henry Maddocks wrote in post #1076876:

[#399575] Re: still learning by doing - connecting rooms in a game — Henry Maddocks <hmaddocks@...> 2012/09/21

[#399576] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Could you be so kind as to suggest another book? I mean there are many

[#399585] Re: still learning by doing - connecting rooms in a game — "Sebastjan H." <lists@...> 2012/09/21

Sebastjan H. wrote in post #1076909:

[#399572] How would you allow variable from specific list of Fixnum? — Eliezer Croitoru <eliezer@...>

I have:

11 messages 2012/09/21

[#399623] Very important question - survey — Marc Heiler <lists@...>

Is matz more like a ninja or more like a samurai?

11 messages 2012/09/22

[#399695] inject problem — Roelof Wobben <rwobben@...>

26 messages 2012/09/25

[#399714] could initialize return an existing object instead of a new instance? — Gary Weaver <lists@...>

Is it possible for initialize to return an existing object instead of a

9 messages 2012/09/25

[#399811] Good book for getting started with Ruby? [I code Python!] — Alec Taylor <alec.taylor6@...>

I've learned programming in C++, Python and PHP at University. (also

12 messages 2012/09/28

[#399815] calcaulation with unknown numbers of numbers and options fail — Roelof Wobben <rwobben@...>

11 messages 2012/09/28

Re: Newbie needs help

From: "Ken L." <lists@...>
Date: 2012-09-05 18:16:05 UTC
List: ruby-talk #398979
7stud -- wrote in post #1074810:
> Where are your tests?


Here are my tests for the SeqRead class that I wrote.


require 'test/unit'

class SeqReadTesting < Test::Unit::TestCase

  def test_basic

    seqRead1 = SeqRead.new(
      "AGTCAGAGTCGCCACCTGTTCTCCCTACATCAAATGTCTATCCCCGCACCAAGTGGAGATTCCATGAGGATGAGGACGCTGACTCCGGCAAGATCGGAAG",
      "@@@FFFFFHGHHHGHIGHHIIII+<9?CFCGF@B*111:?90*0?0@A--86(7@77@G#########################################",
      "@HWI-ST577:156:D16VVACXX:7:1101:1374:2212"
      )
    pL = DNA.new("TGC CGG AGT CAG CGT") # 5' -> 3' left primer
    pR = DNA.new("AGT CAG AGT CGC CAC") # 5' -> 3' right primer

    assert_equal(seqRead1.dna_seq, seqRead1.stripPrimer(pR,
false).dna_seq)
    assert_equal(seqRead1.dna_seq, seqRead1.stripPrimer(pL,
true).dna_seq)
    assert_equal(seqRead1.qscore, seqRead1.stripPrimer(pR,
false).qscore)
    assert_equal(seqRead1.qscore, seqRead1.stripPrimer(pL, true).qscore)

    assert_equal("CTGTTCTCCCTACATCAAATGTCTATCCCCGCACCAAGTGGAGATTCCATGAGGATGAGGACGCTGACTCCGGCAAGATCGGAAG",
      seqRead1.stripPrimer(pR, true).dna_seq)
    assert_equal("IGHHIIII+<9?CFCGF@B*111:?90*0?0@A--86(7@77@G#########################################",
      seqRead1.stripPrimer(pR, true).qscore)
    assert_equal("AGTCAGAGTCGCCACCTGTTCTCCCTACATCAAATGTCTATCCCCGCACCAAGTGGAGATTCCATGAGGATGAGG",
      seqRead1.stripPrimer(pL, false).dna_seq)
    assert_equal("@@@FFFFFHGHHHGHIGHHIIII+<9?CFCGF@B*111:?90*0?0@A--86(7@77@G################",
      seqRead1.stripPrimer(pL, false).qscore)

    assert_equal("IGHHIIII+<9?CFCGF@B*111:?90*0?0@A--86(7@77@G################",
      seqRead1.stripPrimers(pL, pR).qscore)
    assert_equal("CTGTTCTCCCTACATCAAATGTCTATCCCCGCACCAAGTGGAGATTCCATGAGGATGAGG",
      seqRead1.stripPrimers(pL, pR).dna_seq)
  end

end



Here are my tests for the DNA class that I wrote.  It is called from
SeqRead.rb

require 'test/unit'

class DNATesting < Test::Unit::TestCase

  def test_basic
    @testBasic = DNA.new("ACGTMKRYBVDHXN")
    assert_equal("TGCAKMYRVBHDXN", @testBasic.rev_comp.dna_seq)
    assert_equal("R", @testBasic.rev_comp.direction)
    assert_equal("TGCAKMYRVBHDXN", @testBasic.comp.dna_seq)
    assert_equal("F", @testBasic.comp.direction)
  end

  def test_codons
    @testCodons = DNA.new("TTT TTT CTT ATC GTC GTC ATC TTT GTA GTC AGT
CAG AGT CGC CAC")
    assert_equal("TTT TTT CTT ATC GTC GTC ATC TTT GTA GTC AGT CAG AGT
CGC CAC",
      @testCodons.split_by_codon(0))
    assert_equal("T TTT TTC TTA TCG TCG TCA TCT TTG TAG TCA GTC AGA GTC
GCC AC ",
      @testCodons.split_by_codon(1))
    assert_equal("TT TTT TCT TAT CGT CGT CAT CTT TGT AGT CAG TCA GAG TCG
CCA C  ",
      @testCodons.split_by_codon(2))
    assert_equal("TTT TTT CTT ATC GTC GTC ATC TTT GTA GTC AGT CAG AGT
CGC CAC",
      @testCodons.split_by_codon(3))
  end

  def test_translation
    @testTrans = DNA.new("ATG GCG TGC CGT GAA TAG")
    assert_equal("MACRE*", @testTrans.translate(0, false).aa_seq)
    assert_equal("WRAVN",  @testTrans.translate(1, false).aa_seq)
    assert_equal("GVP*I",  @testTrans.translate(2, false).aa_seq)
    assert_equal("MACRE*", @testTrans.translate(3, false).aa_seq)
    @testTrans2 = DNA.new("GAT AAG TGC CGT GCG GTA", "R")
    assert_equal("MACRE*", @testTrans2.translate(0, false).aa_seq)
    assert_equal("WRAVN",  @testTrans2.translate(1, false).aa_seq)
    assert_equal("GVP*I",  @testTrans2.translate(2, false).aa_seq)
    assert_equal("MACRE*", @testTrans2.translate(3, false).aa_seq)
  end

  def test_stripPrimers
    @seq = DNA.new("CCGCCCA AGACCC CGTACCGTTTGGCGTGTCGAGCCCG CTCATC
GGAATG")
    @seq1 = DNA.new(
"CCGCCCAAGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG")
    @seq2 = DNA.new(
"AGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG")
    @seq3 = DNA.new(
"GACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG")
    @seq4 = DNA.new(
"ACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG")
    @seq5 = DNA.new(
"CCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG")
    @seq6 = DNA.new( "CCGCCCAAGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATC")
    @seq7 = DNA.new( "CCGCCCAAGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCAT")
    @seq8 = DNA.new( "CCGCCCAAGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTCA")
    @seq9 = DNA.new( "CCGCCCAAGACCCCGTACCGTTTGGCGTGTCGAGCCCGCTC")
    @seq10 = DNA.new("GTA AGG CTA CTC GCC CGA GCT GTG CGG TTT GCC ATG
CCC CAG AAC CCG", "R")

    @primer_for = DNA.new("AGACCC")   # 5' -> 3'
    @primer_rev = DNA.new("GATGAG")   # 5' -> 3'

    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq10.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq1.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq2.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq3.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("ACCCCGTACCGTTTGGCGTGTCGAGCCCG",
@seq4.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CCCCGTACCGTTTGGCGTGTCGAGCCCG",
@seq5.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq6.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCG",
@seq7.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCGCTCA",
@seq8.stripPrimers(@primer_for, @primer_rev).dna_seq)
    assert_equal("CGTACCGTTTGGCGTGTCGAGCCCGCTC",
@seq9.stripPrimers(@primer_for, @primer_rev).dna_seq)

    @primer_for = DNA.new("")
    assert_equal("CCCCGTACCGTTTGGCGTGTCGAGCCCGCTCATCGGAATG",
@seq5.stripPrimer(@primer_for, true).dna_seq)
  end
end

class PeptideTesting < Test::Unit::TestCase


  def test_private_combination
    a = ["A","B"]
    b = ["C","D"]
    c = ["E"]
    d = "F"
    e = []
    temp = Peptide.new("MACRE")
    assert_equal([["A","C"],["B","C"],["A","D"],["B","D"]],
      temp.send(:combination, a, b))
    assert_equal([["C","A"],["D","A"],["C","B"],["D","B"]],
      temp.send(:combination, b, a))
    assert_equal([["A","E"],["B","E"]],
      temp.send(:combination, a, c))
    assert_equal([["E","A"],["E","B"]],
      temp.send(:combination, c, a))
    assert_equal([["A","F"],["B","F"]],
      temp.send(:combination, a, d))
    assert_equal([["F","A"],["F","B"]],
      temp.send(:combination, d, a))
    assert_equal([["E"]], temp.send(:combination, e, c))
    assert_equal([["E"]], temp.send(:combination, c, e))
    assert_equal(temp.send(:combination, d, e),
      temp.send(:combination, e, d))
  end
end



What is really weird to me is that the problem only shows itself when I 
specify the range of lines to use.  When I do this,

ruby ~/Ruby_code/SeqRead.rb

Run options:

# Running tests:

......

Finished tests in 0.013596s, 441.3063 tests/s, 3456.8991 assertions/s.

6 tests, 47 assertions, 0 failures, 0 errors, 0 skips

or

ruby ~/Ruby_code/DNA_Class.rb

Run options:

# Running tests:

.....

Finished tests in 0.005082s, 983.8646 tests/s, 7280.5982 assertions/s.

5 tests, 37 assertions, 0 failures, 0 errors, 0 skips

So it seems that the classes are ok, just somehow interacting with ARGV 
gives me a problem.  I am so lost.

Thanks for helping!

-- 
Posted via http://www.ruby-forum.com/.

In This Thread