    public function testAmountPrecision()
    {
        // The default precision for PHP is 6 decimal places.
        ini_set('precision', 6);
        $this->assertSame($this->request, $this->request->setAmount('67.10'));
        $this->assertSame('67.10', $this->request->getAmount());

        // At 17 decimal places, 67.10 will echo as 67.09999...
        // This is *why* PHP sets the default precision at 6.
        ini_set('precision', 17);
        $this->assertSame('67.10', $this->request->getAmount());

        $this->assertSame($this->request, $this->request->setAmount('67.01'));
        $this->assertSame('67.01', $this->request->getAmount());

        $this->assertSame($this->request, $this->request->setAmount('0.10'));
        $this->assertSame('0.10', $this->request->getAmount());

        $this->assertSame($this->request, $this->request->setAmount('0.01'));
        $this->assertSame('0.01', $this->request->getAmount());
    }
The software constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component.