Пример #1
0
 function testParametersAreAssignedToSqlCommand()
 {
     $SqlCommand = new SqlCommand();
     $parameters = new Parameters();
     $p1 = new Parameter('n1', 'v1');
     $parameters->Add($p1);
     $parameters->Add(new Parameter('n2', 'v2'));
     $SqlCommand->SetParameters($parameters);
     $newParam = new Parameter('n3', 'v3');
     $SqlCommand->AddParameter($newParam);
     $this->assertNotNull($parameters, 'Parameters object null');
     $this->assertNotNull($SqlCommand->Parameters, 'SqlCommand::parameters is null');
     $this->assertEquals(3, $SqlCommand->Parameters->Count());
     $this->assertEquals($parameters->Items(0), $SqlCommand->Parameters->Items(0));
     $this->assertEquals($parameters->Items(1), $SqlCommand->Parameters->Items(1));
     $this->assertNotNull($SqlCommand->Parameters->Items(2), 'Last parameter object null');
     $this->assertEquals(3, $parameters->Count());
     $this->assertEquals($newParam, $SqlCommand->Parameters->Items(2));
 }
Пример #2
0
 function testDatabaseQueryLoadsValuesInCorrectOrder()
 {
     $name1 = 'paramName1';
     $val1 = 'value1';
     $name2 = 'paramName2';
     $val2 = 'value2';
     $cn = new FakeDBConnection();
     $db = new Database($cn);
     $p1 = new Parameter($name1, $val1);
     $p2 = new Parameter($name2, $val2);
     $parameters = new Parameters();
     $parameters->Add($p1);
     $parameters->Add($p2);
     $command = new SqlCommand("SELECT * FROM sometable WHERE col1 = @{$name1} AND col2 = @{$name2}");
     $command->SetParameters($parameters);
     $adapter = new Mdb2CommandAdapter($command);
     $vals = $adapter->GetValues();
     $this->assertEquals(2, count($vals));
     $this->assertEquals($val1, $vals[$name1]);
     $this->assertEquals($val2, $vals[$name2]);
     $this->assertEquals("SELECT * FROM sometable WHERE col1 = :{$name1} AND col2 = :{$name2}", $adapter->GetQuery());
 }