diff --git a/test/intersect/chromOrderA.bed b/test/intersect/chromOrderA.bed
new file mode 100644
index 0000000000000000000000000000000000000000..6937acfc07996d47b06d5973913048e9aa7d4fd2
--- /dev/null
+++ b/test/intersect/chromOrderA.bed
@@ -0,0 +1,6 @@
+chr1	10	20	a1	100	+
+chr2	10	20	a2	100	+
+chr10	10	20	a3	100	+
+chr11	10	20	a4	100	+
+chrX	10	20	a5	100	+
+chrM	10	20	a6	100	+
diff --git a/test/intersect/chromOrderB.bed b/test/intersect/chromOrderB.bed
new file mode 100644
index 0000000000000000000000000000000000000000..2f2cad1aec0c6101b26818a80a3fea19f1d8b9c3
--- /dev/null
+++ b/test/intersect/chromOrderB.bed
@@ -0,0 +1,12 @@
+chr1	15	25	a1	100	+
+chr1	30	40	a1	100	+
+chr2	15	25	a2	100	+
+chr2	30	40	a1	100	+
+chr10	15	25	a3	100	+
+chr10	30	40	a1	100	+
+chr11	15	25	a4	100	+
+chr11	30	40	a1	100	+
+chrX	15	25	a5	100	+
+chrX	30	40	a1	100	+
+chrM	15	25	a6	100	+
+chrM	30	40	a1	100	+
diff --git a/test/intersect/human.hg19.genome b/test/intersect/human.hg19.genome
new file mode 100644
index 0000000000000000000000000000000000000000..d22ce2d6df72147ba8ddfe13444089d0039be5e2
--- /dev/null
+++ b/test/intersect/human.hg19.genome
@@ -0,0 +1,94 @@
+
+chr1	249250621
+chr10	135534747
+chr11	135006516
+chr11_gl000202_random	40103
+chr12	133851895
+chr13	115169878
+chr14	107349540
+chr15	102531392
+chr16	90354753
+chr17	81195210
+chr17_ctg5_hap1	1680828
+chr17_gl000203_random	37498
+chr17_gl000204_random	81310
+chr17_gl000205_random	174588
+chr17_gl000206_random	41001
+chr18	78077248
+chr18_gl000207_random	4262
+chr19	59128983
+chr19_gl000208_random	92689
+chr19_gl000209_random	159169
+chr1_gl000191_random	106433
+chr1_gl000192_random	547496
+chr2	243199373
+chr20	63025520
+chr21	48129895
+chr21_gl000210_random	27682
+chr22	51304566
+chr3	198022430
+chr4	191154276
+chr4_ctg9_hap1	590426
+chr4_gl000193_random	189789
+chr4_gl000194_random	191469
+chr5	180915260
+chr6	171115067
+chr6_apd_hap1	4622290
+chr6_cox_hap2	4795371
+chr6_dbb_hap3	4610396
+chr6_mann_hap4	4683263
+chr6_mcf_hap5	4833398
+chr6_qbl_hap6	4611984
+chr6_ssto_hap7	4928567
+chr7	159138663
+chr7_gl000195_random	182896
+chr8	146364022
+chr8_gl000196_random	38914
+chr8_gl000197_random	37175
+chr9	141213431
+chr9_gl000198_random	90085
+chr9_gl000199_random	169874
+chr9_gl000200_random	187035
+chr9_gl000201_random	36148
+chrM	16571
+chrUn_gl000211	166566
+chrUn_gl000212	186858
+chrUn_gl000213	164239
+chrUn_gl000214	137718
+chrUn_gl000215	172545
+chrUn_gl000216	172294
+chrUn_gl000217	172149
+chrUn_gl000218	161147
+chrUn_gl000219	179198
+chrUn_gl000220	161802
+chrUn_gl000221	155397
+chrUn_gl000222	186861
+chrUn_gl000223	180455
+chrUn_gl000224	179693
+chrUn_gl000225	211173
+chrUn_gl000226	15008
+chrUn_gl000227	128374
+chrUn_gl000228	129120
+chrUn_gl000229	19913
+chrUn_gl000230	43691
+chrUn_gl000231	27386
+chrUn_gl000232	40652
+chrUn_gl000233	45941
+chrUn_gl000234	40531
+chrUn_gl000235	34474
+chrUn_gl000236	41934
+chrUn_gl000237	45867
+chrUn_gl000238	39939
+chrUn_gl000239	33824
+chrUn_gl000240	41933
+chrUn_gl000241	42152
+chrUn_gl000242	43523
+chrUn_gl000243	43341
+chrUn_gl000244	39929
+chrUn_gl000245	36651
+chrUn_gl000246	38154
+chrUn_gl000247	36422
+chrUn_gl000248	39786
+chrUn_gl000249	38502
+chrX	155270560
+chrY	59373566
diff --git a/test/intersect/human.hg19.vSort.genome b/test/intersect/human.hg19.vSort.genome
new file mode 100644
index 0000000000000000000000000000000000000000..ae5e9d328bdb6f3d68321c9348565ddb4ca16356
--- /dev/null
+++ b/test/intersect/human.hg19.vSort.genome
@@ -0,0 +1,93 @@
+chr1	249250621
+chr2	243199373
+chr3	198022430
+chr4	191154276
+chr5	180915260
+chr6	171115067
+chr7	159138663
+chr8	146364022
+chr9	141213431
+chr10	135534747
+chr11	135006516
+chr12	133851895
+chr13	115169878
+chr14	107349540
+chr15	102531392
+chr16	90354753
+chr17	81195210
+chr18	78077248
+chr19	59128983
+chr20	63025520
+chr21	48129895
+chr22	51304566
+chrX	155270560
+chrY	59373566
+chrM	16571
+chr1_gl000191_random	106433
+chr1_gl000192_random	547496
+chr4_ctg9_hap1	590426
+chr4_gl000193_random	189789
+chr4_gl000194_random	191469
+chr6_apd_hap1	4622290
+chr6_cox_hap2	4795371
+chr6_dbb_hap3	4610396
+chr6_mann_hap4	4683263
+chr6_mcf_hap5	4833398
+chr6_qbl_hap6	4611984
+chr6_ssto_hap7	4928567
+chr7_gl000195_random	182896
+chr8_gl000196_random	38914
+chr8_gl000197_random	37175
+chr9_gl000198_random	90085
+chr9_gl000199_random	169874
+chr9_gl000200_random	187035
+chr9_gl000201_random	36148
+chr11_gl000202_random	40103
+chr17_ctg5_hap1	1680828
+chr17_gl000203_random	37498
+chr17_gl000204_random	81310
+chr17_gl000205_random	174588
+chr17_gl000206_random	41001
+chr18_gl000207_random	4262
+chr19_gl000208_random	92689
+chr19_gl000209_random	159169
+chr21_gl000210_random	27682
+chrUn_gl000211	166566
+chrUn_gl000212	186858
+chrUn_gl000213	164239
+chrUn_gl000214	137718
+chrUn_gl000215	172545
+chrUn_gl000216	172294
+chrUn_gl000217	172149
+chrUn_gl000218	161147
+chrUn_gl000219	179198
+chrUn_gl000220	161802
+chrUn_gl000221	155397
+chrUn_gl000222	186861
+chrUn_gl000223	180455
+chrUn_gl000224	179693
+chrUn_gl000225	211173
+chrUn_gl000226	15008
+chrUn_gl000227	128374
+chrUn_gl000228	129120
+chrUn_gl000229	19913
+chrUn_gl000230	43691
+chrUn_gl000231	27386
+chrUn_gl000232	40652
+chrUn_gl000233	45941
+chrUn_gl000234	40531
+chrUn_gl000235	34474
+chrUn_gl000236	41934
+chrUn_gl000237	45867
+chrUn_gl000238	39939
+chrUn_gl000239	33824
+chrUn_gl000240	41933
+chrUn_gl000241	42152
+chrUn_gl000242	43523
+chrUn_gl000243	43341
+chrUn_gl000244	39929
+chrUn_gl000245	36651
+chrUn_gl000246	38154
+chrUn_gl000247	36422
+chrUn_gl000248	39786
+chrUn_gl000249	38502
diff --git a/test/intersect/j1.bed b/test/intersect/j1.bed
new file mode 100644
index 0000000000000000000000000000000000000000..296a67635b6390b5b6c17f623c41be33f9d35dbe
--- /dev/null
+++ b/test/intersect/j1.bed
@@ -0,0 +1 @@
+chr1	98650	98750	a1	100	+
diff --git a/test/intersect/new_test-intersect.sh b/test/intersect/new_test-intersect.sh
index e23ff4bf2be510102f69d5101d1022e721a31e79..b9cd3ac7ef46e60f511da6073f63dc1b4287360d 100755
--- a/test/intersect/new_test-intersect.sh
+++ b/test/intersect/new_test-intersect.sh
@@ -219,11 +219,74 @@ echo \
 .	-1	-1	FCC1MK2ACXX:1:1102:6799:2633#/2	0	.	-1	-1	-1	0,0,0	0	.	." > exp
 $BT intersect -a a_with_bothUnmapped.bam -b b.bed -bed -v > obs
 check obs exp
-#rm obs exp
+rm obs exp
+
 
+###########################################################
+#  Test intersection of bam file containing read where one
+# mate is mapped and one is not.
+############################################################
+echo "    intersect.new.t19...\c"
+echo \
+"chr1	98650	98704	FCC1MK2ACXX:1:1212:13841:9775#/1	0	+	98604	98704	0,0,0	1	100,	0," > exp
+$BT intersect -a oneUnmapped.bam -b j1.bed -bed > obs
+check obs exp
+rm obs exp
 
+###########################################################
+#  Test intersection of bam file containing read where one
+# mate is mapped and one is not, with noHit (-v) option.
+############################################################
+echo "    intersect.new.t20...\c"
+echo \
+"chr1	-1	-1	FCC1MK2ACXX:1:1212:13841:9775#/2	0	.	-1	-1	-1	0,0,0	0	.	." > exp
+$BT intersect -a oneUnmapped.bam -b j1.bed -bed -v > obs
+check obs exp
+rm obs exp
 
 
+###########################################################
+#  Test intersection with -sorted, see that order specified
+#  in genome file is enforced.
+############################################################
+echo "    intersect.new.t21...\c"
+echo \
+"Error: Sorted input specified, but the file chromOrderA.bed has the following record with a different sort order than the genomeFile human.hg19.genome
+chr10	10	20	a3	100	+" > exp
+$BT intersect -a chromOrderA.bed -b chromOrderB.bed -sorted -g human.hg19.genome 2>obs
+check obs exp
+rm obs exp
+
+
+###########################################################
+#  Test intersection with -sorted, see that hits are missed
+#  With no genome file
+############################################################
+echo "    intersect.new.t22...\c"
+echo \
+"chr1	15	20	a1	100	+
+chr2	15	20	a2	100	+
+chrX	15	20	a5	100	+" > exp
+$BT intersect -a chromOrderA.bed -b chromOrderB.bed -sorted > obs
+check obs exp
+rm obs exp
+
+
+###########################################################
+#  Test intersection with -sorted, see that hits are correct
+#  when sort order of files matches genome file sort order
+############################################################
+echo "    intersect.new.t23...\c"
+echo \
+"chr1	15	20	a1	100	+
+chr2	15	20	a2	100	+
+chr10	15	20	a3	100	+
+chr11	15	20	a4	100	+
+chrX	15	20	a5	100	+
+chrM	15	20	a6	100	+" > exp
+$BT intersect -a chromOrderA.bed -b chromOrderB.bed -sorted -g human.hg19.vSort.genome > obs
+check obs exp
+rm obs exp
 
 
 
diff --git a/test/intersect/oneUnmapped.bam b/test/intersect/oneUnmapped.bam
new file mode 100644
index 0000000000000000000000000000000000000000..9bac213a3da9591f9e8bd6dae3fece1adb933b43
Binary files /dev/null and b/test/intersect/oneUnmapped.bam differ
diff --git a/test/test.sh b/test/test.sh
index 625be7437de11aa24f395f6ce6e16dfa9b52a8ea..f624846bcd71bedd37a99cab28767b1c82563ceb 100644
--- a/test/test.sh
+++ b/test/test.sh
@@ -29,7 +29,7 @@ echo " Testing bedtools getfasta:"
 cd getfasta; sh test-getfasta.sh; cd ..
 
 echo " Testing bedtools intersect:"
-cd intersect; sh test-intersect.sh; cd ..
+cd intersect; sh test-intersect.sh; sh new_test-intersect.sh cd ..
 
 echo " Testing bedtools jaccard:"
 cd jaccard; sh test-jaccard.sh; cd ..