public function return_consecutively($array_of_values, $keep_returning_last_value=false)
    {
        foreach ($this->policies as $policy) {
            foreach ($array_of_values as $value) {
                $policy->check_method_return_value($this->className, $this->methodName, $value, true);
            }
        }

        // $this->returned_values = array_merge($this->returned_values, $array_of_values);
        $this->will = function () use ($array_of_values, $keep_returning_last_value) {
            static $counter = -1;
            $counter++;
            if ($counter == count($array_of_values)) {
                if ($keep_returning_last_value) {
                    return $array_of_values[count($array_of_values)-1];
                }
            } else {
                return $array_of_values[$counter];
            }
        };
        if (!$keep_returning_last_value) {
            $this->times(count($array_of_values));
        }

        return $this;
    }