コード例 #1
0
def lab2():
    if request.method == 'POST':
        try:
            num1 = Money(int(request.form.get('num1_value')),
                         int(request.form.get('num1_coins')))
            num2 = Money(int(request.form.get('num2_value')),
                         int(request.form.get('num2_coins')))
            operation = request.form.get('operation')
            if operation == '+':
                result = num1 + num2
            if operation == '-':
                result = num1 - num2
            if operation == '=':
                result = num1 == num2
            if operation == '>':
                result = num1 > num2
            if operation == '<':
                result = num1 < num2
        except:
            abort(404)
        return render_template('lab2.html',
                               num1=num1,
                               num2=num2,
                               operation=operation,
                               result=result)
    return render_template('lab2.html', num1=Money(0, 0), num2=Money(0, 0))
コード例 #2
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testMixedAddition(self):
     fiveBucks = Money.doller(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     result = bank.reduce(fiveBucks + tenFrancs, "USD")
     self.assertEquals(Money.doller(10), result)
コード例 #3
0
 def testMixedAddtion(self):
     fiveBucks = Money.dollar(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     result = bank.reduce(fiveBucks.plus(tenFrancs), "USD")
     self.assertEqual(Money.dollar(10), result)
コード例 #4
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testSumTimes(self):
     fiveBucks = Money.doller(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     sum = Sum(fiveBucks, tenFrancs).times(2)
     result = bank.reduce(sum, "USD")
     self.assertEquals(Money.doller(20), result)
コード例 #5
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testSumPlusMoney(self):
     fiveBucks = Money.doller(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     sum = Sum(fiveBucks, tenFrancs) + fiveBucks
     result = bank.reduce(sum, "USD")
     self.assertEquals(Money.doller(15), result)
コード例 #6
0
 def testSumPlusMoney(self):
     fiveBucks = Money.dollar(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     sum = Sum(fiveBucks, tenFrancs).plus(fiveBucks)
     result = bank.reduce(sum, "USD")
     self.assertEqual(Money.dollar(15), result)
コード例 #7
0
 def testSumTimes(self):
     fiveBucks = Money.dollar(5)
     tenFrancs = Money.franc(10)
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     sum = Sum(fiveBucks, tenFrancs).times(2)
     result = bank.reduce(sum, "USD")
     self.assertEqual(Money.dollar(20), result)
コード例 #8
0
 def testErrorNumberNegative(self):
     with self.assertRaisesRegex(Exception, "Sorry, il numero è negativo"):
         object1 = Money(5)
         object2 = Money(10)
         n = object1.subtraction(object2)
     with self.assertRaisesRegex(
             Exception,
             "Sorry, il numero inserito non può essere negativo"):
         num = Money(-10)
コード例 #9
0
ファイル: MoneyWidget.py プロジェクト: srobertson/rambler
 def _set_money( self, money ):
     try:
         CORBA.id(money)
         currency = getCurrency(money.currencyCode)
         m = Money(0, currency)
         m._setState(money.amount, currency)
         money = m
     except CORBA.BAD_PARAM:
         pass
     
     self._money = money
コード例 #10
0
    def get_total_value(self):
        if self._fields["share_price"] == "TBD_share_price" or self._fields[
                "quantity"] == "TBD_quantity":
            return "TBD_total_value"

        return Money().set_by_string(self._fields["share_price"]).mult(
            self._fields["quantity"]).__str__()
コード例 #11
0
    def set(self, instance, value, **kwargs):
        """
        Check if value is an actual Money value. If not, attempt
        to convert it to one; otherwise, set to None. Assign all
        properties passed as kwargs to object.

        field.set( Money(10, 'ZAR') )
        field.set( money_instance )

        """
        if value is not None:
            if type(value) in STRING_TYPES:
                cur, value = parseString(decode(value, instance))
                if self.use_global_currency:
                    cur = self.getGlobalCurrency()
                else:
                    if cur is None:
                        cur = self.getDefaultCurrency(instance)
                value = Money(value, cur)

            assert isinstance(
                value,
                Money), ('value must be Money instance. value == %s' % value)

        ObjectField.set(self, instance, value, **kwargs)
コード例 #12
0
class Forest_prototype_factory:
    warrior = Forest_warriors(
        100, 40, 15, "воїн", "normal", copy.copy(State_factory.alive_warrior),
        [Heavy_armor(),
         copy.copy(Weapon_prototype_factory.saber)])
    elite_warrior = Forest_warriors(
        125, 47, 45, "елітний воїн", "elit",
        copy.copy(State_factory.alive_warrior),
        [Heavy_armor(),
         copy.copy(Weapon_prototype_factory.saber)])
    trader = Forest_traders(
        65, [
            copy.copy(Weapon_prototype_factory.sword),
            copy.copy(Weapon_prototype_factory.saber),
            copy.copy(Weapon_prototype_factory.super_sword),
            Light_armor(),
            Heal_armor()
        ], "торговець", "normal", copy.copy(State_factory.alive_trader),
        [Heavy_armor(), Super_armor(),
         Money(250)])
    elite_trader = Forest_traders(
        70, [
            copy.copy(Weapon_prototype_factory.saber),
            copy.copy(Weapon_prototype_factory.super_sword),
            copy.copy(Weapon_prototype_factory.escalibur),
            Heavy_armor(),
            Super_armor()
        ], "багатий торговець", "elite", copy.copy(State_factory.alive_trader),
        [Heavy_armor(), Super_armor(),
         Money(450)])
    monster = Forest_monsters(
        150, 50, 20, "монстр", "normal",
        copy.copy(State_factory.alive_monster),
        [Heavy_armor(),
         copy.copy(Elexir_prototype_factory.monster_elexir)])
    elite_monster = Forest_monsters(
        180, 57, 25, "гігантський монстр", "elite",
        copy.copy(State_factory.alive_monster),
        [Heavy_armor(),
         copy.copy(Elexir_prototype_factory.monster_elexir)])
    civilian = Forest_civilian(50, "мирний житель", "normal",
                               copy.copy(State_factory.alive_civilian),
                               [Money(150)])
コード例 #13
0
    def run():
        print(
            "Hello, please welcome to the game \"Who Wants To Be A Millionaire\""
        )
        i = 0
        question = Question()
        my_money = Money()
        my_helps = Help(1, 1, 1)

        while i <= Constant.TOTAL_QUESTIONS:
            if i == Constant.TOTAL_QUESTIONS:
                print("Congratulations you just have won a million!!!!")
                break

            print("You have: %s EUR" % my_money.get_curr_amount(i))
            answer = raw_input(
                "Press any key if you want to play\nPress Q if you want to take the money and quit\n"
            )
            if str(answer).upper() == "Q":
                print("Thank you for playing! See you next time..")
                break
            guess = question.ask_question(i)
            if str(guess).upper() == "H":
                help = my_helps.choose_help()
                if help == "J":
                    print("You skipped the question, the right answer was %s" %
                          Constant.CORRECT_ANSWERS[i])
                    i = i + 1
                    continue
                elif help in ("A", "R"):
                    my_helps.apply_help(help, i)
                guess = raw_input("Please choose your answer:\n")
            if not question.validate_guess(i, guess):
                print("You have: %s EUR" %
                      my_money.get_current_amount(i, False))
                print("Thank you for playing! See you next time..")
                break
            else:
                i = i + 1
コード例 #14
0
ファイル: MoneyWidget.py プロジェクト: izak/FinanceFields
 def process_form(self,
                  instance,
                  field,
                  form,
                  empty_marker=None,
                  emptyReturnsMarker=False):
     """ handle money input """
     name = field.getName()
     amount = form.get(name, 0)
     if amount:
         if field.use_global_currency:
             currency = field.getGlobalCurrency()
         else:
             currency = form.get('%s_currency' % name)
         value = Money(amount, currency)
     else:
         value = None
     return value, {}
コード例 #15
0
 def testPlusReturnsSum(self):
     five = Money.doller(5)
     sum = five + five
     self.assertEquals(five, sum.augend)
     self.assertEquals(five, sum.addend)
コード例 #16
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testPlusSameCurrencyReturnMoney(self):
     oneBuck1 = Money.doller(1)
     oneBuck2 = Money.doller(1)
     sum = oneBuck1 + oneBuck2
     self.assertTrue(isinstance(sum, Sum))
コード例 #17
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testEquality(self):
     self.assertTrue(Money.doller(5) == Money.doller(5))
     self.assertTrue(Money.doller(5) != Money.doller(6))
     self.assertTrue(Money.doller(5) != Money.franc(5))
コード例 #18
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testReduceMoney(self):
     bank = Bank()
     result = bank.reduce(Money.doller(1), "USD")
     self.assertEquals(Money.doller(1), result)
コード例 #19
0
 def testReduceMoney(self):
     bank = Bank()
     result = bank.reduce(Money.dollar(1), "USD")
     self.assertEqual(Money.dollar(1), result)
コード例 #20
0
 def testPlusReturnsSum(self):
     five = Money.dollar(5)
     result = five.plus(five)
     s = result
     self.assertEqual(five, s.augend)
     self.assertEqual(five, s.addend)
コード例 #21
0
 def testEquality(self):
     self.assertTrue(Money.dollar(5).__eq__(Money.dollar(5)))
     self.assertFalse(Money.dollar(5).__eq__(Money.dollar(6)))
     self.assertFalse(Money.franc(5).__eq__(Money.dollar(5)))
コード例 #22
0
ファイル: test_money.py プロジェクト: n4cl/tdd-study
 def test_currency(self):
     self.assertEqual("USD", Money.dollar(1).currency())
     self.assertEqual("CHF", Money.franc(1).currency())
コード例 #23
0
ファイル: test_money.py プロジェクト: n4cl/tdd-study
 def test_equality(self):
     self.assertTrue(Money.dollar(5).equals(Money.dollar(5)))
     self.assertFalse(Money.dollar(5).equals(Money.dollar(6)))
     self.assertTrue(Money.franc(5).equals(Money.franc(5)))
     self.assertFalse(Money.franc(5).equals(Money.franc(6)))
     self.assertFalse(Money.dollar(5).equals(Money.franc(5)))
コード例 #24
0
    def test_truediv(self):
        m5 = Money(19, 25)
        m6 = Money(9, 66)

        self.assertEqual(m5, self.m3 / self.m2)
        self.assertEqual(m6, self.m1 / self.m2)
コード例 #25
0
 def test_mul(self):
     m5 = Money(1045, 20)
     self.assertEqual(m5, self.m1 * self.m2)
コード例 #26
0
class TestMoney(unittest.TestCase):
    m1 = Money(100, 50)
    m2 = Money(10, 40)
    m3 = Money(200, 20)
    m4 = Money(400, 4)
    m5 = Money(5, 50)

    def test_equals(self):
        self.assertTrue(self.m1 == self.m1)
        self.assertFalse(self.m1 == self.m2)

    def test_equals_other_type(self):
        self.assertFalse(self.m1 == 12)

    def test_equals_other_none(self):
        self.assertFalse(self.m1 == None)

    def test_not_equal(self):
        self.assertTrue(self.m3 != self.m4)
        self.assertFalse(self.m4 != self.m4)

    def test_add(self):
        m5 = Money(110, 90)
        m6 = Money(600, 24)
        self.assertEqual(m5, self.m1 + self.m2)
        self.assertEqual(self.m2 + self.m1, self.m1 + self.m2)
        self.assertEqual(m6, self.m3 + self.m4)

    def test_add_with_none(self):
        with self.assertRaises(TypeError):
            self.m3 + None

    def test_add_with_other_type(self):
        with self.assertRaises(TypeError):
            self.m3 + 1

    def test_sub(self):
        m5 = Money(90, 10)
        self.assertEqual(m5, self.m1 - self.m2)

    def test_sub_additional(self):
        self.assertEqual(Money(4, 90), self.m2 - self.m5)

    def test_sub_with_none(self):
        with self.assertRaises(TypeError):
            self.m3 - None

    def test_sub_with_other_type(self):
        with self.assertRaises(TypeError):
            self.m1 - 8

        with self.assertRaises(TypeError):
            self.m4 - '333'

    def test_mul(self):
        m5 = Money(1045, 20)
        self.assertEqual(m5, self.m1 * self.m2)

    def test_mul_with_none(self):
        with self.assertRaises(TypeError):
            self.m2 * None

    def test_mul_other_type(self):
        with self.assertRaises(TypeError):
            self.m2 * 50

    def test_truediv(self):
        m5 = Money(19, 25)
        m6 = Money(9, 66)

        self.assertEqual(m5, self.m3 / self.m2)
        self.assertEqual(m6, self.m1 / self.m2)

    def test_truediv_with_none(self):
        with self.assertRaises(TypeError):
            self.m2 / None

    def test_truediv_other_type(self):
        with self.assertRaises(TypeError):
            self.m1 / None

    def test_less_than(self):
        self.assertTrue(self.m2 < self.m1)
        self.assertFalse(self.m1 < self.m2)
        self.assertFalse(self.m1 < self.m1)

    def test_less_than_None(self):
        with self.assertRaises(TypeError):
            self.m2 < None

    def test_less_than_other_type(self):
        with self.assertRaises(TypeError):
            self.m3 < 500

    def test_greater_than(self):
        self.assertTrue(self.m4 > self.m1)
        self.assertFalse(self.m1 > self.m4)
        self.assertFalse(self.m1 > self.m1)

    def test_less_equals(self):
        self.assertTrue(self.m1 <= self.m1)
        self.assertTrue(self.m1 <= self.m4)
        self.assertFalse(self.m4 <= self.m1)

    def test_greater_equals(self):
        self.assertTrue(self.m4 >= self.m1)
        self.assertFalse(self.m1 >= self.m4)
        self.assertTrue(self.m4 >= self.m4)
コード例 #27
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testSimpleAddition(self):
     five = Money.doller(5)
     sum = five + five
     bank = Bank()
     reduced = bank.reduce(sum, "USD")
     self.assertEqual(Money.doller(10), reduced)
コード例 #28
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testPlusReturnsSum(self):
     five = Money.doller(5)
     sum = five + five
     self.assertEquals(five, sum.augend)
     self.assertEquals(five, sum.addend)
コード例 #29
0
 def testPlusSameCurrencyReturnMoney(self):
     oneBuck1 = Money.doller(1)
     oneBuck2 = Money.doller(1)
     sum = oneBuck1 + oneBuck2
     self.assertTrue(isinstance(sum, Sum))
コード例 #30
0
button_font = pygame.font.Font('freesansbold.ttf', 20)
play = button_font.render("Play", True, white)
exit = button_font.render("Exit", True, white)
check = button_font.render("Check", True, black)
call = button_font.render("Call", True, black)
fold = button_font.render("Fold", True, white)
raise_txt = button_font.render("Raise", True, white)
raise_min = button_font.render("$10", True, white)
raise_qua = button_font.render("1/4", True, white)
raise_hal = button_font.render("1/2", True, white)
raise_all = button_font.render("All", True, white)

# money and displaying money
for i in range(0, num_players):
    money.append(Money())
money_font = pygame.font.Font('freesansbold.ttf', 30)
display_money = []
for i in range(0, num_players):
    display_money.append(money[i].get_total())
player_money = [0, 0, 0, 0, 0, 0]

# initial small and big blind bets
money[small_blind].bet(small_post)
money[big_blind].bet(big_post)


# to determine a players best card
def reset_best():
    for i in range(0, num_players):
        best_card.append(Best())
コード例 #31
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testCurrency(self):
     self.assertEqual("USD", Money.doller(1).currency)
     self.assertEqual("CHF", Money.franc(1).currency)
コード例 #32
0
 def testSimpleAddition(self):
     five = Money.dollar(5)
     s = five.plus(five)
     bank = Bank()
     reduced = bank.reduce(s, "USD")
     self.assertEqual(Money.dollar(10), reduced)
コード例 #33
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testReduceMoneyDifferentCurrency(self):
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     result = bank.reduce(Money.franc(2), "USD")
     self.assertEquals(Money.doller(1), result)
コード例 #34
0
 def testReduceSum(self):
     s = Sum(Money.dollar(3), Money.dollar(4))
     bank = Bank()
     result = bank.reduce(s, "USD")
     self.assertEqual(Money.dollar(7), result)
コード例 #35
0
def loadLevel(level):
    f = open(level + ".lvl", 'r')
    lines = f.readlines()
    f.close()

    newlines = []

    for line in lines:
        newline = ""
        for c in line:
            if c != "\n":
                newline += c
        newlines += [newline]

    for line in newlines:
        print line

    playerpos = [0, 0]
    for y, line in enumerate(newlines):
        for x, c in enumerate(line):
            if c == "@":
                playerpos = [(x * blocksize[0]) + blocksize[0] / 2,
                             (y * blocksize[1]) + blocksize[1] / 2]
            if c == "#":
                HardBlock("rsc/blocks/black.png",
                          [(x * blocksize[0]) + blocksize[0] / 2,
                           (y * blocksize[1]) + blocksize[1] / 2], blocksize)
            elif c == "$":
                Money(5, [(x * blocksize[0]) + blocksize[0] / 2,
                          (y * blocksize[1]) + blocksize[1] / 2], blocksize)
            elif c == "=":
                HardBlock("rsc/blocks/blue.png",
                          [(x * blocksize[0]) + blocksize[0] / 2,
                           (y * blocksize[1]) + blocksize[1] / 2], blocksize)

            elif c == "w":
                Block("rsc/blocks/wood.png",
                      [(x * blocksize[0]) + blocksize[0] / 2,
                       (y * blocksize[1]) + blocksize[1] / 2], blocksize)

            elif c == "-":
                HardBlock("rsc/blocks/grass.png",
                          [(x * blocksize[0]) + blocksize[0] / 2,
                           (y * blocksize[1]) + blocksize[1] / 2], blocksize)

            elif c == "l":
                Block("rsc/blocks/Leaf.png",
                      [(x * blocksize[0]) + blocksize[0] / 2,
                       (y * blocksize[1]) + blocksize[1] / 2], blocksize)

    #f = open(level+".tng", 'r')
    #lines = f.readlines()
    #f.close()

    newlines = []

    for line in lines:
        newline = ""
        for c in line:
            if c != "\n":
                newline += c
        newlines += [newline]

    for line in newlines:
        print line

    for y, line in enumerate(newlines):
        for x, c in enumerate(line):
            if c == "@":
                player = Player([(x * blocksize[0]) + blocksize[0] / 2,
                                 (y * blocksize[1]) + blocksize[1] / 2],
                                playersize, size)
            elif c == "e":
                Enemy("rsc/enemy/slime 1.png",
                      [(x * blocksize[0]) + blocksize[0] / 2,
                       (y * blocksize[1]) + blocksize[1] / 2], playersize)
    for each in all.sprites():
        each.fixLocation(player.offsetx, player.offsety)
コード例 #36
0
 def testReduceMoneyDifferentCurrency(self):
     bank = Bank()
     bank.addRate("CHF", "USD", 2)
     result = bank.reduce(Money.franc(2), "USD")
     self.assertEqual(Money.dollar(1), result)
コード例 #37
0
 def testCurrency(self):
     self.assertEqual("USD", Money.doller(1).currency)
     self.assertEqual("CHF", Money.franc(1).currency)
コード例 #38
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testReduceSum(self):
     sum = Sum(Money.doller(3), Money.doller(4))
     bank = Bank()
     result = bank.reduce(sum, "USD")
     self.assertEqual(Money.doller(7), result)
コード例 #39
0
 def testEquality(self):
     self.assertTrue(Money.doller(5) == Money.doller(5))
     self.assertTrue(Money.doller(5) != Money.doller(6))
     self.assertTrue(Money.doller(5) != Money.franc(5))
コード例 #40
0
 def testSimpleAddition(self):
     five = Money.doller(5)
     sum = five + five
     bank = Bank()
     reduced = bank.reduce(sum, "USD")
     self.assertEqual(Money.doller(10), reduced)
コード例 #41
0
def main():
    # Use these to test the constructor and getters
    
    m1 = Money()
    m2 = Money()

    print ("Constructors, getters:")
    print ("m1 dollars =", m1.getDollars())
    print ("m1 cents =", m1.getCents())
    print ("m2 dollars =", m2.getDollars())
    print ("m2 cents =", m2.getCents())

    # Use these to test the setters
    
    m1.setDollars(1)
    m1.setCents(20)
    m2.setDollars(1)
    m2.setCents(190)

    print ()
    print ("setters:")
    print ("m1 dollars =", m1.getDollars())
    print ("m1 cents =", m1.getCents())
    print ("m2 dollars =", m2.getDollars())
    print ("m2 cents =", m2.getCents())

    # Use these to test the __str__
    
    print ()
    print ("__str__:")
    print ("m1 =", m1)
    print ("m2 =", m2)

    # Use these to test the compareTo
    
    print ()
    print ("compareTo:")
    print ("m1 is less than m2:", m1.compareTo(m2) < 0)
    print ("m1 equals m2:", m1.compareTo(m2) == 0)
    print ("m1 is greater than m2:", m1.compareTo(m2) > 0)
    m2.setDollars(1)
    m2.setCents(20)
    print ("m1 =", m1)
    print ("m2 =", m2)
    print ("m1 is less than m2:", m1.compareTo(m2) < 0)
    print ("m1 equals m2:", m1.compareTo(m2) == 0)
    print ("m1 is greater than m2:", m1.compareTo(m2) > 0)

    # Use this to test increment
    
    m2.setCents(50)
    print ()
    print ("Before increment:")
    print ("m1 =", m1)
    print ("m2 =", m2)
    m1.increment(m2)
    print ("After increment, m1 =", m1)

    # Use this to test increment more
    
    m1.setDollars(1)
    m1.setCents(20)
    m2.setCents(90)
    print ()
    print ("Before increment with carry:")
    print ("m1 =", m1)
    print ("m2 =", m2)
    m1.increment(m2)
    print ("After increment with carry, m1 =", m1)
コード例 #42
0
ファイル: test_money.py プロジェクト: n4cl/tdd-study
 def test_franc_multiplication(self):
     five = Money.franc(5)
     self.assertEqual(Money.franc(10), five.times(2))
     self.assertEqual(Money.franc(15), five.times(3))
コード例 #43
0
def setItemValue():
	"""method sets worths of all Items"""
	Money.setWorth()
	Dollar.setWorth()
	Gold.setWorth()
	Bond.setWorth()
コード例 #44
0
ファイル: test_money.py プロジェクト: n4cl/tdd-study
 def test_multiplication(self):
     five = Money.dollar(5)
     self.assertEqual(Money.dollar(10), five.times(2))
     self.assertEqual(Money.dollar(15), five.times(3))
コード例 #45
0
ファイル: testMoney.py プロジェクト: koj-t/python_tdd
 def testMultiplication(self):
     five = Money.doller(5)
     self.assertEqual(Money.doller(10), five.times(2))
     self.assertEqual(Money.doller(15), five.times(3))