chriskite / phactory

A Database Factory for PHP Unit Tests
http://phactory.org
MIT License
140 stars 39 forks source link

FindOne using integer property fails - but the same works using string #25

Open zwickes opened 11 years ago

zwickes commented 11 years ago

//Given: Phactory::define('keys', array('Xid' => 9999999)); Phactory::create('keys');

// This FAILS to find the record: ... $keysCollection = $udb->selectCollection('keys'); $keyResults = $keysCollection->findOne(array('Xid' => 9999999));

// However - if we simply change the data (stored and searched) to STRING it works! Phactory::define('keys', array('Xid' => "9999999")); Phactory::create('keys'); ... $keysCollection = $udb->selectCollection('keys'); $keyResults = $keysCollection->findOne(array('Xid' => "9999999"));

As you can see the number is small enough not to cause any potential Int64 strangeness. Clearly a bug.

jimbojsb commented 11 years ago

Can you provide a runnable snippet that reproduces this in isolation? I don't think this is an issue with Phactory.

zwickes commented 11 years ago

You are right - looks like it was probably my code... Thanks. However, I have more questions about the proper usage. I think I am not doing this right. Can I direct questions here? Or somewhere else? Thanks!