Здесь должно быть что-то простое, но я этого не вижу.Правильное управление контекстом в Ruby mixins
У меня есть модуль под названием генотипа, с классом под названием Генотип:
module Genotyping
class Genotype
И у меня есть класс модульного тестирования, где я пытаюсь сделать некоторую работу с модулем:
require "test/unit"
require "../genotyping.rb"
include Genotyping
class TestGenotyping < Test::Unit::TestCase
def test_genotype
geno = Genotyping::Genotype.new
И что я получаю при запуске блока тестового файла является:
2) Error:
test_genotype(TestGenotyping):
NameError: uninitialized constant Genotyping::Genotype
Если я удалить генотипирование :: Qualifer, естественно я получаю:
1) Error:
test_breeding_scenario(TestGenotyping):
NameError: uninitialized constant TestGenotyping::Genotype
Я взял твердый взгляд вокруг, и не могу сказать, что я делаю неправильно.
Проблема не воспроизводится здесь (ruby 1.9.3p392). Второй запрос требует, чтобы вы использовали 1.8.x. –
Кроме того, не воспроизводится с 2,0 – nicooga