Example #1
0
def test_mod(xbits, ybits, op):
    """Tests modular reduction exhaustively for the given bit sizes and
    negation at every possible position, with randomly generated
    integers.
    """
    for i in xbits:
        for j in ybits:
            x = LargeInteger(randomInt(i, i))
            y = LargeInteger(randomInt(j, j))
            x.mod(y)
Example #2
0
def test_modPow(xbits, ybits):
    """Tests modular exponentiation exhaustively for the given bit sizes
    and negation at every possible position, with randomly generated
    integers.
    """
    for i in xbits:
        for j in ybits:
            print("i = %s, j = %s" % (i, j))
            x = LargeInteger(randomInt(i, i))
            y = LargeInteger(randomInt(j, j))
            z = LargeInteger(randomInt(j, j + 1))
            x.modPow(y, z)
Example #3
0
def test_square(xbits):
    """Tests squaring exhaustively for the given bit sizes, and with
    negation, with randomly generated integers.
    """
    for i in xbits:
        x = LargeInteger(randomInt(i, i))
        x.square()
        x.neg().square()
Example #4
0
def test_mul_div(xbits, ybits, op):
    """Tests multiplication/division exhaustively for the given bit sizes
    and negation at every possible position, with randomly generated
    integers.
    """
    for i in xbits:
        for j in ybits:
            x = LargeInteger(randomInt(i, i))
            y = LargeInteger(randomInt(j, j))
            if (op == "mul"):
                x.mul(y)
                x.mul(y.neg())
                x.neg().mul(y)
                x.neg().mul(y.neg())
            elif (y.value > 0):
                x.div(y)
                x.div(y.neg())
                x.neg().div(y)
                x.neg().div(y.neg())
Example #5
0
def test_add_sub(xbits, ybits, op):
    """Tests addition/subtraction exhaustively for the given bit sizes and
    negation at every possible position, with randomly generated
    integers.
    """
    for i in xbits:
        for j in ybits:
            x = LargeInteger(randomInt(i, i))
            y = LargeInteger(randomInt(j, j))

            if (op == "add"):
                x.add(y)
                x.add(y.neg())
                x.neg().add(y)
                x.neg().add(y.neg())
            else:
                x.sub(y)
                x.sub(y.neg())
                x.neg().sub(y)
                x.neg().sub(y.neg())
Example #6
0
def genData():
    services = []
    for i in range(0, util.randomInt(2)):
        services.append({
            "date":
            util.randomDate(afterDate="03/01/2020 8:00 AM",
                            toDate="05/15/2020 05:00 PM"),
            "name":
            util.randomString(util.randomInt(2)),
            "code":
            util.randomInt(4),
            "description":
            util.randomString(util.randomInt(3)),
            "cost":
            round(util.randomMoney(min=100.00, max=900.00), 2)
        })
    return {
        "patient": {
            "patientId": util.randomInt(12),
            "name": util.generateName(),
            "address": util.randomStreetAddress(),
            "city": util.randomCity(),
            "state": util.randomState(),
            "zip": util.randomZipCode()
        },
        "fileId": util.randomInt(6),
        "created": datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"),
        "services": services
    }