Download Latest Version Installer-Windows-7-EasyDeployExtensionsPack-32-64-(sqlite_fdw,www_fdw,mysql_fdw,ldap_fdw,couchdb_fdw,oracle_fdw).7z (11.2 MB)
Email in envelope

Get an email when there's a new version of postgresql-mingw-w64

Name Modified Size InfoDownloads / Week
Parent folder
sql 2013-12-04
request-serialize-callback-type-xml-indent 2013-12-04
request-serialize-callback-type-xml 2013-12-04
request-serialize-callback-type-json-indent 2013-12-04
request-serialize-callback-type-json 2013-12-04
json_parser 2013-12-04
expected 2013-12-04
xml-response-deserialize-callback.sql 2013-12-04 1.1 kB
test.sh 2013-12-04 387 Bytes
test-xml-response-deserialize-callback.sh 2013-12-04 2.4 kB
test-response-iterate-callback.sh 2013-12-04 1.5 kB
test-request-serialize-callback-type-xml.sh 2013-12-04 987 Bytes
test-request-serialize-callback-type-log.sh 2013-12-04 1.4 kB
test-request-serialize-callback-type-null.sh 2013-12-04 1.1 kB
test-request-serialize-callback-type-json.sh 2013-12-04 991 Bytes
test-request-serialize-callback-post.sh 2013-12-04 3.2 kB
test-other-response-deserialize-callback.sh 2013-12-04 2.3 kB
test-json-response-deserialize-callback.sh 2013-12-04 2.8 kB
test-default-xml.sh 2013-12-04 3.2 kB
test-all.sh 2013-12-04 1.6 kB
test-default-json.sh 2013-12-04 2.0 kB
response-iterate-callback.sql 2013-12-04 770 Bytes
request-serialize-callback-type-xml.sql 2013-12-04 833 Bytes
request-serialize-callback-type-xml-indent.sql 2013-12-04 871 Bytes
request-serialize-callback-type-null.sql 2013-12-04 867 Bytes
request-serialize-callback-type-json.sql 2013-12-04 834 Bytes
request-serialize-callback-type-log.sql 2013-12-04 835 Bytes
request-serialize-callback-type-json-indent.sql 2013-12-04 872 Bytes
request-serialize-callback-post.sql 2013-12-04 1.2 kB
README.md 2013-12-04 3.2 kB
json-response-deserialize-callback.sql 2013-12-04 1.3 kB
other-response-deserialize-callback.sql 2013-12-04 1.2 kB
default-xml.sql 2013-12-04 552 Bytes
default-json.sql 2013-12-04 396 Bytes
Totals: 34 Items   38.8 kB 0

Test types

There are 3 types of tests currently:

  • standard PGXS regression tests;
  • different test cases;
  • development json parser tests.

Standard postgres PGXS regression tests

Location:

  • test/sql/ - input files
  • test/expected/ - output files

Each test has same filename base, but differs in extension:

  • .sql - for input;
  • .out - for output.

Currently there is only one simple test. It do following:

  • check types (used in extension) creation;
  • check extension/server/user_mapping creation.

It's executed with make testinstall (after make && make install). Current user has to have access for extension creation.

Different test cases

Location:

test/test-*.sh

Dependencies:

  • bash
  • perl
  • Mojo web framework. Can be installed with:
    • sudo sh -c "curl -L cpanmin.us | perl - Mojolicious"
    • For more details read at:
    • http://mojolicio.us/

Current user has to have access for extension creation.

Each test file do following things:

  • starts up simple server;
  • initializes extension with current case properties;
  • runs number of queries and checks output.

test/test-all.sh - run all available tests. It accepts options. Check them with -h or --help CLI option. It outputs results for each test file it runs and stats for all executed files either.

There are tests those need postgres to be compiled with xml feature support (--libxml). Also there are tests those need following json data type support: json data type implementation for postgres All these dependent tests are skipped by default in test/test-all.sh. Look for CLI option to force them.

Development json parser tests

Location:

test/json_parser

Can be executed with "json_parser.sh" script. It compiles json parser executable, runs it against all given input files and checks against corresponding output files. Proper output looks like:

$ ./json_parser.sh 
cc -O2 -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels -Wmissing-format-attribute -Wformat-security -fno-strict-aliasing -fwrapv -g -I../..   -c -o json_parser.o json_parser.c
json_parser.c: In function ‘main’:
json_parser.c:15:2: warning: suggest parentheses around assignment used as truth value [-Wparentheses]
cc   json_parser.o ../../libjson-0.8/json.o ../../src/json_parser.o   -o json_parser
===== TEST: json_parser.in.00 json_parser.out.00 =====
===== TEST: json_parser.in.01 json_parser.out.01 =====
===== TEST: json_parser.in.02 json_parser.out.02 =====
===== TEST: json_parser.in.03 json_parser.out.03 =====
===== TEST: json_parser.in.04 json_parser.out.04 =====
===== TEST: json_parser.in.05 json_parser.out.05 =====
===== TEST: json_parser.in.06 json_parser.out.06 =====
===== TEST: json_parser.in.07 json_parser.out.07 =====
===== TEST: json_parser.in.08 json_parser.out.08 =====
===== TEST: json_parser.in.09 json_parser.out.09 =====
rm -f json_parser json_parser.o ../../libjson-0.8/json.o ../../src/json_parser.o
Source: README.md, updated 2013-12-04