<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,12 +1,40 @@
 Developing the invoicing gem
 ============================
 
-You need to set up a test database, using something like (for MySQL, the default):
+For development, you need up-to-date versions of the following gems (`sudo gem install &lt;gemname&gt;`):
 
-    $ echo &quot;create database ept_invoicing_test&quot; | mysql -uroot
+  * rake
+  * activerecord
+  * mysql (if you use MySQL)
+  * pg (if you use PostgreSQL)
+  * newgem
+  * flexmock
+
+Fork the invoicing gem on GitHub, then clone it to your machine:
+
+    $ git clone git@github.com:YOUR-GITHUB-USERNAME/invoicing.git
+
+
+MySQL
+-----
+
+You need to set up a test database. You can modify the settings for the test database in
+`config/database.yml`, but if you stick with the defaults, you can set up the database like this:
 
+    $ echo &quot;create database ept_invoicing_test&quot; | mysql -uroot
     $ echo &quot;grant all on ept_invoicing_test.* to 'build'@'%'&quot; | mysql -uroot
 
 Then run the tests by typing `rake`.
 
-FIXME: add notes on Postgres, testing different gem versions, testing different Ruby versions, ...
+
+PostgreSQL
+----------
+
+To set up the test database, run something like the following as root:
+
+    # su -c 'createuser -SDRP invoicing' postgres  # (enter &quot;password&quot; as password)
+    # su -c 'createdb -O invoicing invoicing_test' postgres
+
+Then run the tests by typing:
+
+    $ DATABASE=postgresql rake</diff>
      <filename>HACKING.md</filename>
    </modified>
    <modified>
      <diff>@@ -13,7 +13,7 @@ require 'invoicing'
 # Overridden by ../../config/database.yml if it exists.
 TEST_DB_CONFIG = {
   :postgresql =&gt; {:adapter =&gt; &quot;postgresql&quot;, :host =&gt; &quot;localhost&quot;, :database =&gt; &quot;invoicing_test&quot;,
-    :username =&gt; &quot;postgres&quot;, :password =&gt; &quot;&quot;},
+    :username =&gt; &quot;invoicing&quot;, :password =&gt; &quot;password&quot;},
   :mysql =&gt; {:adapter =&gt; &quot;mysql&quot;, :host =&gt; &quot;localhost&quot;, :database =&gt; &quot;invoicing_test&quot;,
     :username =&gt; &quot;root&quot;, :password =&gt; &quot;&quot;}
 }</diff>
      <filename>invoicing/test/test_helper.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>124a9adf61451f8639a4674ca2296810d6da70df</id>
    </parent>
  </parents>
  <author>
    <name>Martin Kleppmann</name>
    <email>martin@eptcomputing.com</email>
  </author>
  <url>http://github.com/ept/invoicing/commit/39d5259d884556aaaf9aa36bd4c5ccc513ef8c37</url>
  <id>39d5259d884556aaaf9aa36bd4c5ccc513ef8c37</id>
  <committed-date>2009-08-26T06:44:21-07:00</committed-date>
  <authored-date>2009-08-26T06:44:21-07:00</authored-date>
  <message>Updated info for running Postgres tests</message>
  <tree>f0d009a13b145ba3d94542a79ab48eb5edff156b</tree>
  <committer>
    <name>Martin Kleppmann</name>
    <email>martin@eptcomputing.com</email>
  </committer>
</commit>
