text: define(function(require) {
  'use strict';
  
  var object = require('object');
  
  suite('Object', function() {
    var subject;
  
    setup(function() {
      subject = object;
    });
  
    test('#filter', function() {
      assert.deepEqual(
        subject.filter(
          {
            '0': 'red',
            '1': 'orange',
            '2': 'yellow',
            '3': 'green',
            '4': 'blue',
            '5': 'violet'
          },
          (key, value) => {
            return value === 'red' || parseInt(key, 10) % 2 === 1;
          }
        ),
        [
          'red',
          'orange',
          'green',
          'violet'
        ]
      );
    });
  
    test('#forEach', function() {
      var input = { a: 'b', p: 'q', x: 'y' };
      var result = {};
      subject.forEach(input, (key, value) => {
        result[key] = value;
      });
  
      assert.deepEqual(input, result);
    });
  
    test('#map', function() {
      var input = { a: 'b', p: 'q', x: 'y' };
      var result = subject.map(input, (key, value) => {
        return value;
      });
  
      assert.deepEqual(result, ['b', 'q', 'y']);
    });
  
    test('#values', function() {
      var input = { a: 'b', p: 'q', x: 'y' };
      var result = subject.values(input);
      assert.deepEqual(result, ['b', 'q', 'y']);
    });
  });
  
  });
  