     static var allTests: [(String, (NDArrayArithmeticTests) -> () throws -> Void)] {
         return [
             ("testUnaryPlus", testUnaryPlus),
+            ("testUnaryPlusOperator", testUnaryPlusOperator),
             ("testUnaryMinus", testUnaryMinus),
+            ("testUnaryMinusOperator", testUnaryMinusOperator),
             ("testAdd", testAdd),
+            ("testAddOperator", testAddOperator),
             ("testSubtract", testSubtract),
+            ("testSubtractOperator", testSubtractOperator),
             ("testMultiply", testMultiply),
+            ("testMultiplyOperator", testMultiplyOperator),
             ("testDivide", testDivide),
+            ("testDivideOperator", testDivideOperator),
             ("testModulo", testModulo),
+            ("testModuloOperator", testModuloOperator),
         ]
     }
 }

        }
    }
    
    func testModulo() {
        // NDArray and scalar
        do {

            let a = NDArray<Int>(shape: [2, 2], elements: [1, 2, 3, 4])
            let b = NDArray<Int>(shape: [2, 2], elements: [3, 2, 2, 3])
            XCTAssertEqual(modulo(a, b), NDArray(shape: [2, 2], elements: [1, 0, 1, 1]))
        }
    }
    
    func testModuloOperator() {
        // NDArray and scalar
        do {
            let a = NDArray<Int>(shape: [2, 2], elements: [1, 2, 3, 4])
            XCTAssertEqual(a % 2, NDArray(shape: [2, 2], elements: [1, 0, 1, 0]))
            XCTAssertEqual(2 % a, NDArray(shape: [2, 2], elements: [0, 0, 2, 2]))
        }
        
        // NDArray and NDArray
        do {
            let a = NDArray<Int>(shape: [2, 2], elements: [1, 2, 3, 4])
            let b = NDArray<Int>(shape: [2, 2], elements: [3, 2, 2, 3])
            XCTAssertEqual(a % b, NDArray(shape: [2, 2], elements: [1, 0, 1, 1]))
        }
    }
    
