Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用RSpec测试队列分为两个流_Ruby On Rails_Testing_Rspec - Fatal编程技术网

Ruby on rails 使用RSpec测试队列分为两个流

Ruby on rails 使用RSpec测试队列分为两个流,ruby-on-rails,testing,rspec,Ruby On Rails,Testing,Rspec,你能帮我测试一下队列吗。我是rails和rspec的新手 it "the queue should be divided into two streams" do Queue.all expect(Queue.all.split(2)).to eq(2) end 但是它不起作用你想通过这个测试达到什么目的?因为这里只测试splitruby方法 无论如何,如果您想要分割ActiveRecord结果,您应该在(2)的组中使用方法经过一些尝试,我自己找到了解决方法: it

你能帮我测试一下队列吗。我是rails和rspec的新手

it "the queue should be divided into two streams" do
     Queue.all
     expect(Queue.all.split(2)).to eq(2)
   end

但是它不起作用

你想通过这个测试达到什么目的?因为这里只测试
split
ruby方法


无论如何,如果您想要分割ActiveRecord结果,您应该在(2)的组中使用
方法

经过一些尝试,我自己找到了解决方法:

it "the queue should be divided into two streams", focus: true  do
    ap expected = [queue_prop_3_30.id, queue_prop_31_45.id]
    common_queue = CommonQueue.all
    queue_numbers = common_queue.map { |queue_number| queue_number.queue_id }
    ap actual = queue_numbers.uniq
    ap expect(expected).to eq(actual)
  end