فهرست منبع

Throw OperationError instead of returning a String

Flavio Diez 5 سال پیش
والد
کامیت
0ab96dd4ca
2فایلهای تغییر یافته به همراه8 افزوده شده و 6 حذف شده
  1. 4 3
      src/core/operations/RailFenceCipherDecode.mjs
  2. 4 3
      src/core/operations/RailFenceCipherEncode.mjs

+ 4 - 3
src/core/operations/RailFenceCipherDecode.mjs

@@ -5,6 +5,7 @@
  */
 
 import Operation from "../Operation.mjs";
+import OperationError from "../errors/OperationError.mjs";
 
 /**
  * Rail Fence Cipher Decode operation
@@ -48,13 +49,13 @@ class RailFenceCipherDecode extends Operation {
         let cipher = input;
 
         if (key < 2) {
-            return "Key has to be bigger than 2";
+            throw new OperationError("Key has to be bigger than 2");
         } else if (key > cipher.length) {
-            return "Key should be smaller than the cipher's length";
+            throw new OperationError("Key should be smaller than the cipher's length");
         }
 
         if (offset < 0) {
-            return "Offset has to be a positive integer";
+            throw new OperationError("Offset has to be a positive integer");
         }
 
         const cycle = (key - 1) * 2;

+ 4 - 3
src/core/operations/RailFenceCipherEncode.mjs

@@ -5,6 +5,7 @@
  */
 
 import Operation from "../Operation.mjs";
+import OperationError from "../errors/OperationError.mjs";
 
 /**
  * Rail Fence Cipher Encode operation
@@ -47,13 +48,13 @@ class RailFenceCipherEncode extends Operation {
 
         const plaintext = input;
         if (key < 2) {
-            return "Key has to be bigger than 2";
+            throw new OperationError("Key has to be bigger than 2");
         } else if (key > plaintext.length) {
-            return "Key should be smaller than the plain text's length";
+            throw new OperationError("Key should be smaller than the plain text's length");
         }
 
         if (offset < 0) {
-            return "Offset has to be a positive integer";
+            throw new OperationError("Offset has to be a positive integer");
         }
 
         const cycle = (key - 1) * 2;