// Copyright 2009 the Sputnik authors.  All rights reserved.
// This code is governed by the BSD license found in the LICENSE file.

/*---
info: |
    String.prototype.substring (start, end) can be applied to non String object instance and
    returns a string value(not object)
es5id: 15.5.4.15_A3_T10
description: >
    Checknig if applying String.prototype.substring to Function object
    instance passes
---*/

__FACTORY.prototype.substring = String.prototype.substring;

var __instance = new __FACTORY(void 0);

//////////////////////////////////////////////////////////////////////////////
//CHECK#1
if (__instance.substring(0, 100) !== "undefined") {
  $ERROR('#1: __instance.substring(0, 100) === "undefined". Actual: ' + __instance.substring(0, 100));
}
//
//////////////////////////////////////////////////////////////////////////////

function __FACTORY(value) {
  this.value = value;
  this.toString = function() {
    return this.value + '';
  }
}

reportCompare(0, 0);
