Elder, please check out this test, this should be the same example as you gave (only with a limit of 30, and 100 total resources). If this isn't as expected than i am missing something:

```ruby
context 'Elders example in action' do
  let(:directory) {test_api_client.directories.create name: "Directory for pagination testing"}
  
  let!(:groups) do
    ('1'..'100').map do |number|
      directory.groups.create name: number
    end
  end

  after do
    directory.delete
  end

  it 'should paginate properly' do
    expect(directory.groups).to have(100).items

    expect(directory.groups.map {|group| group.name }).to eq(('1'..'100').to_a.sort)

    expect(directory.groups.limit(30)).to have(30).items

    expect(directory.groups.limit(30).offset(30)).to have(30).items

    expect(directory.groups.limit(30).offset(60)).to have(30).items

    expect(directory.groups.limit(30).offset(90)).to have(10).items

    expect(directory.groups.limit(30).map {|group| group.name }).to eq(('1'..'100').to_a.sort.first(30))

    expect(directory.groups.limit(30).offset(30).map {|group| group.name }).to eq(('1'..'100').to_a.sort.drop(30).first(30))

    expect(directory.groups.limit(30).offset(60).map {|group| group.name }).to eq(('1'..'100').to_a.sort.drop(60).first(30))

    expect(directory.groups.limit(30).offset(90).map {|group| group.name }).to eq(('1'..'100').to_a.sort.drop(90).first(30))
  end
end
```