WARNING: Ruby n00b question!

I'm trying to solve the below problem for a class I'm taking, but keep getting the following errors. Can someone tell me what I'm doing wrong?

Implement a new Die class which takes an array of strings as its input. When Die#roll is called, it randomly returns one of these strings. If Die.new is passed an empty array, raise an ArgumentError. It should work like this:

Code:
die = Die.new(['A', 'B', 'C', 'D', 'E', 'F'])
die.sides # still returns the number of sides, in this case 6
die.roll # returns one of ['A', 'B', 'C', 'D', 'E', 'F'], randomly
My code:

Code:
class Die
  def initialize(labels)
    if labels.empty?
      raise ArgumentError.new("Your die must have 1 or more sides!")
    else
      @sides = labels.length
   end
end

def sides
  @sides
end

def roll
  (1..@sides).each do |x|
  return #What goes here? Need strings in the array to correspond to variable @sides...
  end
end

end
Errors I'm getting:

Error!
Die#roll returns a single letter if one label is passed in
expected: ["J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J", "J"] got: [nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil] (compared using ==) Diff: @@ -1,101 +1,101 @@ -["J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J", - "J"] +[nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil, + nil]

Error!
Die#roll returns every possible letter for a sufficiently large number of rolls
expected: ["C", "E", "G", "H", "K", "M", "N", "O", "P", "Q", "R", "T", "V", "W", "Z"] got: [nil] (compared using ==) Diff: @@ -1,2 +1,2 @@ -["C", "E", "G", "H", "K", "M", "N", "O", "P", "Q", "R", "T", "V", "W", "Z"] +[nil]


Anybody know what I'm doing wrong? Would really appreciate some help from an expert.