CSC/ECE 517 Fall 2013/oss E816 cyy: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
Line 10: Line 10:
==plagiarism_test.rb==
==plagiarism_test.rb==


To see the original code please go to this [https://github.com/expertiza/expertiza/blob/master/app/models/automated_metareview/plagiarism_check.rb link] :
To see the original code please go to this [https://github.com/expertiza/expertiza/blob/master/app/models/automated_metareview/plagiarism_check.rb link].
 
The main responsibility of Plagiarism_Check is to determine whether the reviews are just copied from other sources.
 
Basically, there are four kinds of plagiarism need to be check :  
 
1. whether the review is copied from the submissions of the assignment
2. whether the review is copied from the review questions
3. whether the review is copied from other reviews
4. whether the review is copied from the Internet or other sources, this may be detected through google search
 
For example, in the test file: expertiza/test/unit/automated_metareview/plagiarism_check_test.rb
 
the 1st test shows:
 
test "check for plagiarism true match" do
    review_text = ["The sweet potatoes in the vegetable bin are green with mold. These sweet potatoes in the vegetable bin are fresh."]
    subm_text = ["The sweet potatoes in the vegetable bin are green with mold. These sweet potatoes in the vegetable bin are fresh."]
 
    instance = PlagiarismChecker.new
    assert_equal(true, instance.check_for_plagiarism(review_text, subm_text))
end


=Test Our Code=
=Test Our Code=

Revision as of 18:12, 30 October 2013

Refactoring — plagiarism_check.rb and sentence_state.rb

Introduction

Project description

Design

sentence_state.rb

plagiarism_test.rb

To see the original code please go to this link.

The main responsibility of Plagiarism_Check is to determine whether the reviews are just copied from other sources.

Basically, there are four kinds of plagiarism need to be check :

1. whether the review is copied from the submissions of the assignment 2. whether the review is copied from the review questions 3. whether the review is copied from other reviews 4. whether the review is copied from the Internet or other sources, this may be detected through google search

For example, in the test file: expertiza/test/unit/automated_metareview/plagiarism_check_test.rb

the 1st test shows:

test "check for plagiarism true match" do
   review_text = ["The sweet potatoes in the vegetable bin are green with mold. These sweet potatoes in the vegetable bin are fresh."]
   subm_text = ["The sweet potatoes in the vegetable bin are green with mold. These sweet potatoes in the vegetable bin are fresh."]
  
   instance = PlagiarismChecker.new
   assert_equal(true, instance.check_for_plagiarism(review_text, subm_text))
end

Test Our Code

Link to VCL

1. http://152.46.20.30:3000/ Username: admin, password:password 2. If the first one does not work, please use this one. http://vclv99-129.hpc.ncsu.edu:3000 Username: admin, password: admin 3. If none of these work, please do not do your review in a hurry, shoot us an email, we will fix it as soon as possible. (yhuang25@ncsu.edu, ysun6@ncsu.edu, grimes.caroline@gmail.com). Thank you so much!

Test Our Code

1. Set up the project following the steps above 2. Run db:test:prepare 3. Run plagiarism_check_test.rb and sentence_state_test.rb, they are under /test/unit/automated_metareview. After refactoring, all tests passed without error. 4. sentence_state.rb and plagiarism_check.rb are under /app/models/automated_metareview

Files Changed

text_preprocessing.rb plagiarism_check.rb sentence_state.rb tagged_sentence.rb constants.rb negations.rb plagiarism_check_test.rb sentence_state_test.rb

Steps to Setup Project

1. Use ruby 1.9.3 2. Setup mysql and start server 3. bundle install 4. Download from http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip/from/pick and copy all files from the lib folder from the download into <Ruby193>\bin 5. Change /config/database.yml according your mysql root password and mysql port. 6. db:create:all 7. mysql -u root -p <YOUR_PASSWORD> pg_development < expertiza-scrubbed_2013_07_10.sql 8. rake db:migrate 9. rails server

Git Forked Repository URL

https://github.com/shanfangshuiyuan/expertiza

Future work

References