S is a struct containing input data and the expected value T is the return type of the function being tested N is the number of inputs
See Implementation
S is a struct containing input data and the expected value T is the return type of the function being tested N is the number of inputs