diff --git a/AUTHORS b/AUTHORS
index be5451e..6f5b94a 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -7,3 +7,7 @@ Steve Barnes <steve@echo.id.au>
 Johnny Hughes <johnny@centos.org>
 Christoph Galuschka <christoph.galuschka@chello.at>
 Dan Trainor <dan.trainor@gmail.com>
+Nikhil Lanjewar <nikhil@lanjewar.com>
+Sahil Muthoo <sahilm@thoughtworks.com>
+Sahil Aggarwal <sahilagg@gmail.com>
+Saager Mhatre <saager.mhatre@gmail.com>
diff --git a/runtests.sh b/runtests.sh
index a5e8427..1acf223 100755
--- a/runtests.sh
+++ b/runtests.sh
@@ -19,10 +19,15 @@ set -e
 set -u
 
 # process our test scripts
-t_Process <(/usr/bin/find ./tests/0_*/ -type f|sort -t'/' )
-t_Process <(/usr/bin/find ./tests/p_*/ -type f|sort -t'/' )
-t_Process <(/usr/bin/find ./tests/r_*/ -type f|sort -t'/' )
-t_Process <(/usr/bin/find ./tests/z_*/ -type f|sort -t'/' )
+if [ $# -gt 0 ]; then
+  t_Process <(/usr/bin/find ./tests/0_*/ -type f|sort -t'/' )
+  t_Process <(/usr/bin/find ./tests/$1/ -type f|sort -t'/' )
+else
+  t_Process <(/usr/bin/find ./tests/p_*/ -type f|sort -t'/' )
+  t_Process <(/usr/bin/find ./tests/0_*/ -type f|sort -t'/' )
+  t_Process <(/usr/bin/find ./tests/r_*/ -type f|sort -t'/' )
+  t_Process <(/usr/bin/find ./tests/z_*/ -type f|sort -t'/' )
+fi
 
 # and, we're done.
 t_Log "QA t_functional tests finished."
diff --git a/tests/0_lib/functions.sh b/tests/0_lib/functions.sh
index de4093c..8643624 100755
--- a/tests/0_lib/functions.sh
+++ b/tests/0_lib/functions.sh
@@ -115,6 +115,12 @@ function t_GetArch
 	rpm -q --queryformat '%{arch}\n' centos-release
 }
 
+function t_Assert
+{
+ $@ >/dev/null 2>&1
+ t_CheckExitStatus $?
+}
+
 export -f t_Log
 export -f t_CheckExitStatus
 export -f t_InstallPackage
@@ -126,3 +132,4 @@ export -f t_GetPkgRel
 export -f t_DistCheck
 export -f t_GetPkgVer
 export -f t_GetArch
+export -f t_Assert
diff --git a/tests/p_bc/0-install_bc.sh b/tests/p_bc/0-install_bc.sh
new file mode 100755
index 0000000..2107276
--- /dev/null
+++ b/tests/p_bc/0-install_bc.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+# Author : Varadharajan M <srinathsmn@gmail.com>
+#	   Manoj Mahalingam <manojlds@gmail.com>
+t_InstallPackage bc
+t_CheckExitStatus $?
diff --git a/tests/p_bc/bc-test-basic-functionalities.sh b/tests/p_bc/bc-test-basic-functionalities.sh
new file mode 100644
index 0000000..716b9a1
--- /dev/null
+++ b/tests/p_bc/bc-test-basic-functionalities.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+# Author : Varadharajan M <srinathsmn@gmail.com>
+#          Manoj Mahalingam <manojlds@gmail.com>
+
+t_Log "Running $0 - Testing basic bc functionalities"
+test `echo "5 + 6 * 5 / 10 - 1" | bc` -eq "7" ; t_CheckExitStatus $?                                                            
diff --git a/tests/p_bc/bc-test-installation.sh b/tests/p_bc/bc-test-installation.sh
new file mode 100644
index 0000000..a58d7a1
--- /dev/null
+++ b/tests/p_bc/bc-test-installation.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+# Author : Varadharajan M <srinathsmn@gmail.com>
+#          Manoj Mahalingam <manojlds@gmail.com>
+
+
+t_Log "Running $0 - Test bc is installed"
+bc --version
+t_CheckExitStatus $?
diff --git a/tests/p_file/00_file_package.sh b/tests/p_file/00_file_package.sh
new file mode 100755
index 0000000..402649c
--- /dev/null
+++ b/tests/p_file/00_file_package.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+t_Log "Running $0 - checking if file package is installed"
+
+t_Assert "rpm -q file"
diff --git a/tests/p_file/01_file_mime_application.sh b/tests/p_file/01_file_mime_application.sh
new file mode 100755
index 0000000..6645fa5
--- /dev/null
+++ b/tests/p_file/01_file_mime_application.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+t_Log "Running $0 - checking if file can recognixe mime executable type "
+
+file /bin/bash --mime-type | grep "application/x-executable"
+
+t_CheckExitStatus $?
diff --git a/tests/p_file/02_file_mime_image.sh b/tests/p_file/02_file_mime_image.sh
new file mode 100755
index 0000000..bae423e
--- /dev/null
+++ b/tests/p_file/02_file_mime_image.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+t_Log "Running $0 - checking if file can recognize image mime file type "
+
+file  /usr/lib/anaconda-runtime/boot/syslinux-splash.png --mime-type | grep 'image/png'
+
+t_CheckExitStatus $?
+
diff --git a/tests/p_file/03_file_mime_symlink.sh b/tests/p_file/03_file_mime_symlink.sh
new file mode 100755
index 0000000..e8c3211
--- /dev/null
+++ b/tests/p_file/03_file_mime_symlink.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+
+t_Log "Running $0 - checking if file can recognize symlink mime file type "
+
+file  /etc/favicon.png --mime-type | grep 'application/x-symlink'
+
+t_CheckExitStatus $?
diff --git a/tests/p_git/0-install_git.sh b/tests/p_git/0-install_git.sh
new file mode 100755
index 0000000..872e5e3
--- /dev/null
+++ b/tests/p_git/0-install_git.sh
@@ -0,0 +1,7 @@
+#!/bin/bash
+# Author: Pratima Singh <prati.86@gmail.com>, Nilesh Bairagi <nileshbairagi@gmail.com>, Madhurranjan Mohaan <madhurranjan.mohaan@gmail.com>
+
+# Install git
+t_Log "Running $0 - installing git"
+
+t_InstallPackage git
diff --git a/tests/p_git/10-test_git.sh b/tests/p_git/10-test_git.sh
new file mode 100755
index 0000000..ba249f6
--- /dev/null
+++ b/tests/p_git/10-test_git.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+# Author: Pratima Singh <prati.86@gmail.com>, Nilesh Bairagi <nileshbairagi@gmail.com>, Madhurranjan Mohaan <madhurranjan.mohaan@gmail.com>
+
+# Check git installation
+git --version
+t_CheckExitStatus $?
diff --git a/tests/p_git/11-test_git_clone.sh b/tests/p_git/11-test_git_clone.sh
new file mode 100755
index 0000000..f7118dd
--- /dev/null
+++ b/tests/p_git/11-test_git_clone.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+# Author: Pratima Singh <prati.86@gmail.com>, Nilesh Bairagi <nileshbairagi@gmail.com>, Madhurranjan Mohaan <madhurranjan.mohaan@gmail.com>
+
+# Testing Git clone by comparing SHAs
+rm -rf /tmp/temprepo/ /tmp/cloned_repo/ /tmp/testing_clone_repo  
+temp_repo="/tmp/temprepo"
+SHA1=`echo "hello world" | git hash-object --stdin`
+mkdir -p $temp_repo
+cd $temp_repo
+git init . --bare
+cd /tmp
+git clone $temp_repo cloned_repo
+cd cloned_repo
+echo "hello world" > hello
+git add hello
+git commit -m "Temp commit"
+git push origin master
+
+git clone $temp_repo /tmp/testing_clone_repo
+cd /tmp/testing_clone_repo
+SHA2=`cat hello | git hash-object --stdin`
+expr $SHA1 == $SHA2 2>&1
+t_CheckExitStatus $?
diff --git a/tests/p_git/12-test_git_log.sh b/tests/p_git/12-test_git_log.sh
new file mode 100755
index 0000000..89d0ba8
--- /dev/null
+++ b/tests/p_git/12-test_git_log.sh
@@ -0,0 +1,18 @@
+#!/bin/bash
+
+# Author: Pratima Singh <prati.86@gmail.com>, Nilesh Bairagi <nileshbairagi@gmail.com>, Madhurranjan Mohaan <madhurranjan.mohaan@gmail.com>
+
+# Tsting git log and git commit msgs
+rm -rf /tmp/temprepo/ /tmp/cloned_repo/ 
+temp_repo="/tmp/temprepo"
+mkdir -p $temp_repo
+cd $temp_repo
+git init . --bare
+cd /tmp
+git clone $temp_repo cloned_repo
+cd cloned_repo
+echo "hello world" > hello
+git add hello
+git commit -m "Temp commit" 2>&1
+git log --grep="Temp commit" 2>&1
+t_CheckExitStatus $?
diff --git a/tests/p_lftp/0_install_lftp.sh b/tests/p_lftp/0_install_lftp.sh
new file mode 100755
index 0000000..724e4bf
--- /dev/null
+++ b/tests/p_lftp/0_install_lftp.sh
@@ -0,0 +1,7 @@
+# Author: Piyush Kumar <piykumar@gmail.com>
+# Author: Munish Kumar <munishktotech@gmail.com>
+# Author: Ayush Gupta <ayush.001@gmail.com>
+# Author: Konark Modi <modi.konark@gmail.com>
+
+t_Log "Running $0 -installing lftp."
+t_InstallPackage lftp
diff --git a/tests/p_lftp/10_lftp_http_test.sh b/tests/p_lftp/10_lftp_http_test.sh
new file mode 100755
index 0000000..40d7b0e
--- /dev/null
+++ b/tests/p_lftp/10_lftp_http_test.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+# Author: Piyush Kumar <piykumar@gmail.com>
+# Author: Munish Kumar <munishktotech@gmail.com>
+# Author: Ayush Gupta <ayush.001@gmail.com>
+# Author: Konark Modi <modi.konark@gmail.com>
+
+t_Log "Running $0 - lftp: HTTP test"
+if [ $SKIP_QA_HARNESS ]; then
+CHECK_FOR="UTC"
+URL="http://mirror.centos.org/centos//timestamp.txt"
+else
+CHECK_FOR="UTC"
+URL="http://mirror.centos.org/centos//timestamp.txt"
+fi
+
+t_Log "Querying ${URL}"
+
+lftp << EOF
+pget -n 5 ${URL}
+bye
+EOF
+
+grep -q "${CHECK_FOR}" timestamp.txt
+ret_val=$?
+rm timestamp.txt
+t_CheckExitStatus $ret_val
diff --git a/tests/p_lftp/20_lftp_ftp.sh b/tests/p_lftp/20_lftp_ftp.sh
new file mode 100755
index 0000000..eedce86
--- /dev/null
+++ b/tests/p_lftp/20_lftp_ftp.sh
@@ -0,0 +1,26 @@
+#!/bin/sh
+# Author: Piyush Kumar <piykumar@gmail.com>
+# Author: Munish Kumar <munishktotech@gmail.com>
+# Author: Ayush Gupta <ayush.001@gmail.com>
+# Author: Konark Modi <modi.konark@gmail.com>
+FILE=/tmp/test_lftp_ftp.txt
+
+if [ $SKIP_QA_HARNESS ]; then
+URL="ftp://ftp.freebsd.org/pub/FreeBSD/"
+else
+URL="ftp://ftp.freebsd.org/pub/FreeBSD/"
+fi
+
+
+lftp -e 'set net:timeout 10; get README.TXT -o $FILE; bye' $URL   > /dev/null 2>&1
+t_Log "Running $0 - lftp test with FTP test."
+if [ -f $FILE ]
+  then
+  grep -ci 'konark' $FILE
+  ret_val=$?
+  else
+  t_Log "FTP test for lftp failed"
+  ret_val=$?
+fi
+rm -f $FILE
+t_CheckExitStatus $ret_val
diff --git a/tests/p_network/networking_enabled_test.sh b/tests/p_network/networking_enabled_test.sh
index fbc1c1c..84e54c2 100755
--- a/tests/p_network/networking_enabled_test.sh
+++ b/tests/p_network/networking_enabled_test.sh
@@ -3,7 +3,7 @@
 
 t_Log "Running $0 - Check if networking is enabled."
 
-grep -q 'NETWORKING=yes' /etc/sysconfig/network
+grep -Eqi "NETWORKING=.*yes" /etc/sysconfig/network
 
 
 t_CheckExitStatus $?
diff --git a/tests/p_ruby/0-install-ruby.sh b/tests/p_ruby/0-install-ruby.sh
new file mode 100755
index 0000000..14d98b9
--- /dev/null
+++ b/tests/p_ruby/0-install-ruby.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - attempting to install ruby, ruby-irb, ruby-ri and ruby-rdoc4"
+t_InstallPackage ruby
+t_InstallPackage ruby-irb
+t_InstallPackage ruby-ri
+t_InstallPackage ruby-rdoc
+
diff --git a/tests/p_ruby/10-ruby-installed-test.sh b/tests/p_ruby/10-ruby-installed-test.sh
new file mode 100755
index 0000000..cf3783e
--- /dev/null
+++ b/tests/p_ruby/10-ruby-installed-test.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - Check successful installation of ruby."
+ruby -v
+t_CheckExitStatus $?
+
diff --git a/tests/p_ruby/20-ruby-version-test.sh b/tests/p_ruby/20-ruby-version-test.sh
new file mode 100755
index 0000000..94bef97
--- /dev/null
+++ b/tests/p_ruby/20-ruby-version-test.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - Check successful installation of ruby."
+ruby -v | grep -q '1.8.7'
+t_CheckExitStatus $?
+
diff --git a/tests/p_ruby/30-irb-test.sh b/tests/p_ruby/30-irb-test.sh
new file mode 100755
index 0000000..53e09d8
--- /dev/null
+++ b/tests/p_ruby/30-irb-test.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - Check successful installation of irb."
+
+irb -v | grep '0.9.5'
+
+t_CheckExitStatus $?
+
diff --git a/tests/p_ruby/40-ri-test.sh b/tests/p_ruby/40-ri-test.sh
new file mode 100755
index 0000000..1a5d230
--- /dev/null
+++ b/tests/p_ruby/40-ri-test.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - Check successful installation of ruby ri."
+
+ri -v | grep 'v1.0.1'
+
+t_CheckExitStatus $?
+
diff --git a/tests/p_ruby/50-rdoc-test.sh b/tests/p_ruby/50-rdoc-test.sh
new file mode 100755
index 0000000..9d351dd
--- /dev/null
+++ b/tests/p_ruby/50-rdoc-test.sh
@@ -0,0 +1,12 @@
+#!/bin/sh
+# Author: Nikhil Lanjewar <nikhil@lanjewar.com>
+# Author: Sahil Muthoo <sahilm@thoughtworks.com>
+# Author: Sahil Aggarwal <sahilagg@gmail.com>
+# Author: Saager Mhatre <saager.mhatre@gmail.com>
+
+t_Log "Running $0 - Check successful installation of ruby rdoc."
+
+rdoc -v | grep 'V1.0.1'
+
+t_CheckExitStatus $?
+
diff --git a/tests_incomplete/p_0lzo/0-install_lzo.sh b/tests_incomplete/p_0lzo/0-install_lzo.sh
new file mode 100755
index 0000000..d91ca7b
--- /dev/null
+++ b/tests_incomplete/p_0lzo/0-install_lzo.sh
@@ -0,0 +1,5 @@
+#!/bin/bash
+# Author: Vivek Dubey <dvivek@thoughtworks.com>
+# Akshay Karle <akshayka@thoughtworks.com> 
+
+t_InstallPackage lzop
diff --git a/tests_incomplete/p_0lzo/abc b/tests_incomplete/p_0lzo/abc
new file mode 100644
index 0000000..1aad27d
--- /dev/null
+++ b/tests_incomplete/p_0lzo/abc
@@ -0,0 +1 @@
+blahblahblah
diff --git a/tests_incomplete/p_0lzo/foo b/tests_incomplete/p_0lzo/foo
new file mode 100644
index 0000000..1aad27d
--- /dev/null
+++ b/tests_incomplete/p_0lzo/foo
@@ -0,0 +1 @@
+blahblahblah
diff --git a/tests_incomplete/p_0lzo/foo.lzo b/tests_incomplete/p_0lzo/foo.lzo
new file mode 100644
index 0000000..0cf13d8
Binary files /dev/null and b/tests_incomplete/p_0lzo/foo.lzo differ
diff --git a/tests_incomplete/p_0lzo/test_lzo.sh b/tests_incomplete/p_0lzo/test_lzo.sh
new file mode 100644
index 0000000..e9614a8
--- /dev/null
+++ b/tests_incomplete/p_0lzo/test_lzo.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+# Author: Vivek Dubey <dvivek@thoughtworks.com>
+# Akshay Karle <akshayka@thoughtworks.com>
+
+echo 'blahblahblah' > /tmp/foo
+
+lzop -9v /tmp/foo -o /tmp/foo.lzo
+
+lzop -d /tmp/foo.lzo -o /tmp/abc
+
+rm -f /tmp/foo
+rm -f /tmp/foo.lzo
+rm -f /tmp/abc
+t_CheckExitStatus $?