[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

load "file-name" question

David Moody

6/15/2007 3:11:00 AM


Hello all,

This is my first post to this forum and I am a ruby nood who usually
does C# development.

I am working on a little app and have seperated my classes into
different files. I put all of those file into a directory called lib.
like this

trunk
-----lib
-------JobList.rb
-----tests
-------JobListTest.rb
-----testfiles

In the test dir I have a file that does some unit testing. If I put

load '../lib/JobList'

It works. But I am thinking that maybe this isn't the best "Ruby way" to
do it.
Amy advise on how I should set up my project and use the load method?

Hmm. I just noticed that maybe I should put a single directory under
trunk as the root dir of my project?
BTW you can see all of this on Google code if it helps @
http://code.google.com/p/autosys...



Thanks in advance.
MoeBious

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

3 Answers

David Moody

6/15/2007 3:16:00 AM

0

David Moody wrote:
>
> Hello all,
>
> This is my first post to this forum and I am a ruby nood who usually
> does C# development.
>
> I am working on a little app and have seperated my classes into
> different files. I put all of those file into a directory called lib.
> like this
>
> trunk
> -----lib
> -------JobList.rb
> -----tests
> -------JobListTest.rb
> -----testfiles
>
> In the test dir I have a file that does some unit testing. If I put
>
> load '../lib/JobList'
>
> It works. But I am thinking that maybe this isn't the best "Ruby way" to
> do it.
> Amy advise on how I should set up my project and use the load method?
>
> Hmm. I just noticed that maybe I should put a single directory under
> trunk as the root dir of my project?
> BTW you can see all of this on Google code if it helps @
> http://code.google.com/p/autosys...
>
>
>
> Thanks in advance.
> MoeBious

EDIT

I should have said require "../lib/JobList"

I am using require not load. Sorry for any confusion.

thanks
MoeBious

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

Aatch

6/15/2007 3:59:00 AM

0

David Moody wrote:
> David Moody wrote:
>>
>> Hello all,
>>
>> This is my first post to this forum and I am a ruby nood who usually
>> does C# development.
>>
>> I am working on a little app and have seperated my classes into
>> different files. I put all of those file into a directory called lib.
>> like this
>>
>> trunk
>> -----lib
>> -------JobList.rb
>> -----tests
>> -------JobListTest.rb
>> -----testfiles
>>
>> In the test dir I have a file that does some unit testing. If I put
>>
>> load '../lib/JobList'
>>
> MoeBious

Its looks good. I cant really see the problem. As far as i know
filesystems use '..' notation no matter what the operating system. It's
not a long line and if it works it's good. And its perfectly readable.

Dont worry about it.

Aatch

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

Alex Young

6/15/2007 7:21:00 AM

0

David Moody wrote:
> David Moody wrote:
>> Hello all,
>>
>> This is my first post to this forum and I am a ruby nood who usually
>> does C# development.
>>
>> I am working on a little app and have seperated my classes into
>> different files. I put all of those file into a directory called lib.
>> like this
>>
>> trunk
>> -----lib
>> -------JobList.rb
>> -----tests
>> -------JobListTest.rb
>> -----testfiles
>>
>> In the test dir I have a file that does some unit testing. If I put
>>
>> load '../lib/JobList'

I usually handle this by having a file 'test/boottest.rb' that looks
like this (along with whatever other project-specific bits and pieces I
might need across all test files):

$app_dir = File.expand_path(File.join(File.dirname(__FILE__), '..'))
$:.unshift($app_dir)

That means that I can handle all the requires as though from the project
root, so the top of a test file might look like this:

require 'boottest'
require 'test/TestModules'
require 'lib/JobList'

It simplifies things a little, because then there's less confusion as to
which files are being required.

--
Alex