From 7a23ebefdfa2a926cb9a22239eb3401427d606d0 Mon Sep 17 00:00:00 2001
From: Gerui Wang <wgr523@gmail.com>
Date: Wed, 26 Jan 2022 02:02:15 +0800
Subject: [PATCH] windows autograder

---
 MidtermProject1/add_test.py            | 2 +-
 MidtermProject1/autograder_windows.bat | 6 ++++++
 MidtermProject2/add_test.py            | 2 +-
 MidtermProject2/autograder_windows.bat | 6 ++++++
 MidtermProject3/add_test.py            | 2 +-
 MidtermProject3/autograder_windows.bat | 6 ++++++
 Warmup1/README.md                      | 6 +++++-
 Warmup1/add_test.py                    | 4 ++--
 Warmup1/autograder_windows.bat         | 6 ++++++
 Warmup2/README.md                      | 2 ++
 Warmup2/add_test.py                    | 2 +-
 Warmup2/autograder_windows.bat         | 6 ++++++
 12 files changed, 43 insertions(+), 7 deletions(-)
 create mode 100644 MidtermProject1/autograder_windows.bat
 create mode 100644 MidtermProject2/autograder_windows.bat
 create mode 100644 MidtermProject3/autograder_windows.bat
 create mode 100644 Warmup1/autograder_windows.bat
 create mode 100644 Warmup2/autograder_windows.bat

diff --git a/MidtermProject1/add_test.py b/MidtermProject1/add_test.py
index 1aab178..31b63bb 100644
--- a/MidtermProject1/add_test.py
+++ b/MidtermProject1/add_test.py
@@ -19,7 +19,7 @@ mod tests {
 import re
 import sys
 import os.path as path
-file_path = path.join(sys.argv[1], 'src/blockchain/mod.rs')
+file_path = path.join(sys.argv[1], 'src','blockchain','mod.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
diff --git a/MidtermProject1/autograder_windows.bat b/MidtermProject1/autograder_windows.bat
new file mode 100644
index 0000000..34a045d
--- /dev/null
+++ b/MidtermProject1/autograder_windows.bat
@@ -0,0 +1,6 @@
+@echo off
+set /p netid="Please unzip your code manually in this directory, and put it in a directory named after your netid, (make sure that Cargo.toml and src/ is in your-netid/ece598pv-sp2022-main), and enter your netid:"
+python3 add_test.py %netid%\ece598pv-sp2022-main
+cd %netid%\ece598pv-sp2022-main
+cargo test sp2022autograder02
+pause
\ No newline at end of file
diff --git a/MidtermProject2/add_test.py b/MidtermProject2/add_test.py
index d38fef9..ddd3b40 100644
--- a/MidtermProject2/add_test.py
+++ b/MidtermProject2/add_test.py
@@ -24,7 +24,7 @@ mod test {
 import re
 import sys
 import os.path as path
-file_path = path.join(sys.argv[1], 'src/miner/mod.rs')
+file_path = path.join(sys.argv[1], 'src','miner','mod.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
diff --git a/MidtermProject2/autograder_windows.bat b/MidtermProject2/autograder_windows.bat
new file mode 100644
index 0000000..51ed00d
--- /dev/null
+++ b/MidtermProject2/autograder_windows.bat
@@ -0,0 +1,6 @@
+@echo off
+set /p netid="Please unzip your code manually in this directory, and put it in a directory named after your netid, (make sure that Cargo.toml and src/ is in your-netid/ece598pv-sp2022-main), and enter your netid:"
+python3 add_test.py %netid%\ece598pv-sp2022-main
+cd %netid%\ece598pv-sp2022-main
+cargo test sp2022autograder03
+pause
\ No newline at end of file
diff --git a/MidtermProject3/add_test.py b/MidtermProject3/add_test.py
index c931634..a50f911 100644
--- a/MidtermProject3/add_test.py
+++ b/MidtermProject3/add_test.py
@@ -55,7 +55,7 @@ mod test {
 import re
 import sys
 import os.path as path
-file_path = path.join(sys.argv[1], 'src/network/worker.rs')
+file_path = path.join(sys.argv[1], 'src','network','worker.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
diff --git a/MidtermProject3/autograder_windows.bat b/MidtermProject3/autograder_windows.bat
new file mode 100644
index 0000000..7610329
--- /dev/null
+++ b/MidtermProject3/autograder_windows.bat
@@ -0,0 +1,6 @@
+@echo off
+set /p netid="Please unzip your code manually in this directory, and put it in a directory named after your netid, (make sure that Cargo.toml and src/ is in your-netid/ece598pv-sp2022-main), and enter your netid:"
+python3 add_test.py %netid%\ece598pv-sp2022-main
+cd %netid%\ece598pv-sp2022-main
+cargo test sp2022autograder04
+pause
\ No newline at end of file
diff --git a/Warmup1/README.md b/Warmup1/README.md
index ad4e23f..87d72fa 100755
--- a/Warmup1/README.md
+++ b/Warmup1/README.md
@@ -79,7 +79,7 @@ test types::transaction::tests::sign_verify ... ok
 ```
 - To test your code, you are free to write more tests.
 
-## Double check
+## Double check (Unix)
 We provide (incomplete) auto-grader for you to test that your code format fits auto-grader. However, passing this auto-grader doesn't guarantee getting full grades. For this assignment, put your netid.zip file with [autograder.sh](autograder.sh) and [add_test.py](add_test.py) in a new directory, from where run
 ```
 bash autograder.sh
@@ -90,6 +90,10 @@ If you see "Code format wrong" on screen, your code may change the lines that sh
 
 If in _log.txt_ you cannot see correct log, your zip file may have incorrect directories for auto-grader to compile.
 
+## Double check (windows)
+Similar to Unix double checking auto-grader, we provide `autograder_windows.bat`. First, you need to manually unzip your netid.zip file, and put the `ece598pv-sp2022-main` folder inside a folder named after your netid. Make sure that `Cargo.toml` and `src/` is in `your-netid/ece598pv-sp2022-main`. Then double click `autograder_windows.bat`, enter your netid as instructed, and the result will be shown in a cmd window.
+
+You need to install `python3` to run it.
 ## Submission
 Download the zip file of your repo on gitlab. Rename it to your netid as `netid.zip`. Upload the zip file on compass2g. Please check your file size and it should not be very large.
 
diff --git a/Warmup1/add_test.py b/Warmup1/add_test.py
index 193ad33..cb091c2 100644
--- a/Warmup1/add_test.py
+++ b/Warmup1/add_test.py
@@ -43,7 +43,7 @@ mod tests {
 import re
 import sys
 import os.path as path
-file_path = path.join(sys.argv[1], 'src/types/address.rs')
+file_path = path.join(sys.argv[1], 'src','types','address.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
@@ -66,7 +66,7 @@ if change_before and change_after:
 else:
     print("\033[91m {}\033[00m".format("Code format wrong"))
 
-file_path = path.join(sys.argv[1], 'src/types/transaction.rs')
+file_path = path.join(sys.argv[1], 'src','types','transaction.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
diff --git a/Warmup1/autograder_windows.bat b/Warmup1/autograder_windows.bat
new file mode 100644
index 0000000..29e77de
--- /dev/null
+++ b/Warmup1/autograder_windows.bat
@@ -0,0 +1,6 @@
+@echo off
+set /p netid="Please unzip your code manually in this directory, and put it in a directory named after your netid, (make sure that Cargo.toml and src/ is in your-netid/ece598pv-sp2022-main), and enter your netid:"
+python3 add_test.py %netid%\ece598pv-sp2022-main
+cd %netid%\ece598pv-sp2022-main
+cargo test sp2022autograder00
+pause
\ No newline at end of file
diff --git a/Warmup2/README.md b/Warmup2/README.md
index 2450d7a..3a0e5a9 100755
--- a/Warmup2/README.md
+++ b/Warmup2/README.md
@@ -47,3 +47,5 @@ We provide (incomplete) auto-grader for you to test that your code format fits a
 bash autograder.sh
 ```
 And you can open the output file _log.txt_, and see whether the auto-grader's tests are passed. You need to have `bash`, `unzip`, and `python3` to run this double check.
+## Double check (windows)
+Same as warmup 1.
\ No newline at end of file
diff --git a/Warmup2/add_test.py b/Warmup2/add_test.py
index dc56b37..26916f4 100644
--- a/Warmup2/add_test.py
+++ b/Warmup2/add_test.py
@@ -53,7 +53,7 @@ mod tests {
 import re
 import sys
 import os.path as path
-file_path = path.join(sys.argv[1], 'src/types/merkle.rs')
+file_path = path.join(sys.argv[1], 'src','types','merkle.rs')
 print(path.dirname(file_path), end=' ')
 before_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. BEFORE TEST'
 after_pat = r'// DO NOT CHANGE THIS COMMENT, IT IS FOR AUTOGRADER. AFTER TEST'
diff --git a/Warmup2/autograder_windows.bat b/Warmup2/autograder_windows.bat
new file mode 100644
index 0000000..8bac484
--- /dev/null
+++ b/Warmup2/autograder_windows.bat
@@ -0,0 +1,6 @@
+@echo off
+set /p netid="Please unzip your code manually in this directory, and put it in a directory named after your netid, (make sure that Cargo.toml and src/ is in your-netid/ece598pv-sp2022-main), and enter your netid:"
+python3 add_test.py %netid%\ece598pv-sp2022-main
+cd %netid%\ece598pv-sp2022-main
+cargo test sp2022autograder01
+pause
\ No newline at end of file
-- 
GitLab