main
1require "spec_helper"
2
3describe BubbleSort do
4 subject { BubbleSort.new }
5
6 it "should be able to sort an empty array" do
7 expect(subject.sort([])).to eq([])
8 end
9
10 it "should be able to sort an array with one item" do
11 expect(subject.sort([1])).to eq([1])
12 end
13
14 it "should be able to sort an array of numbers" do
15 n = 500
16 numbers = Array.new(n) { rand(n) }
17 Benchmark.bmbm do |x|
18 x.report("bubble sort") { expect(subject.sort(numbers)).to eq(numbers.sort) }
19 end
20 end
21end