Re: TDD Database migration code
"Adam Sroka [email protected] [testdrivendevelopment]" <[email protected]> Wed, 20 Apr 2016 04:17:06 -0700
| Newsgroups | gmane.comp.programming.test-driven-development |
|---|---|
| Message-ID | <CALaPUVde-qdeLkOhVERCqyf3O+-Ned8eN5--NuUWCD-QyiVc=A@mail.gmail.com> |
You are welcome! General advice: be cautious about building functionality into the database. The database should be optimized for storage and retrieval. Decisions about how to ask the right questions of the database should probably be in a layer closer to the customer, and in the language appropriate to that place. On Wed, Apr 20, 2016 at 1:06 AM, Avi Kessner [email protected] [testdrivendevelopment] <[email protected]> wrote: > > > PgTap looks perfect. Thanks! > On Apr 20, 2016 10:59 AM, "Avi Kessner" <[email protected]> wrote: > >> Ideally I'm looking for something that creates databases, runs sql, is >> able to check the state of the database, and then destroys the database. >> >> I don't really care at what level that happens at. (Though easier is >> obviously better) .. (investigating pgtap now, thanks) >> >> brought to you by the letters A, V, and I >> and the number 47 >> >> On Wed, Apr 20, 2016 at 10:21 AM, Adam Sroka [email protected] >> [testdrivendevelopment] <[email protected]> wrote: >> >>> >>> >>> Are you talking about test driving database access code from a general >>> purpose language? Or are you talking about test driving stuff inside the >>> database engine? There is http://pgtap.org/ but I would look for a way >>> to do it at a higher level, unless... a gun was pointed at my head. >>> >>> On Tuesday, April 19, 2016, [email protected] [testdrivendevelopment] < >>> [email protected]> wrote: >>> >>>> >>>> >>>> My google searches are giving me bad results... :( >>>> >>>> Does anyone know of any good articles, or have any good hints, on how >>>> to do TDD for writing PostgresSQL, or database code? >>>> >>>> I need to write a custom system which allows us to do DB migrations and >>>> updates etc, a bit similar to what Ruby on Rails with has their DB >>>> rake:migration command.* >>>> >>>> Google is mostly giving me information on how to abstract out DB >>>> objects, but I need to verify that my new custom migration system is >>>> actually working. >>>> >>>> The tests I would want to write are simples >>>> 1. Confirm that a migration file worked (say by adding a column) >>>> 2. Confirm that only the latest migration was run, and not a >>>> previous one (say by checking a value in the table wasn't changed) >>>> >>>> I appreciate the help you can provide. >>>> >>>> *The short version is: >>>> 1. A command which generates a .sql file with a timestamp in the file >>>> name. >>>> 2. A command which checks all the files in a folder, and then does >>>> some comparisons to another db, and picks one or more .sql files to run on >>>> the db in question. >>>> >>>> >>>> >>>> >>>> >>>> >> >