コード例 #1
0
ファイル: test.py プロジェクト: clkwan/Calculator-using-TDD
    def test_power(self):
        logger = logging.getLogger()
        test_case = [[3, 2], [8, 0], [-15, 9], [4, -1], ['a', 'b']]
        expected_result = [9, 1, -38443359375, 0.25, None]

        for i in range(len(expected_result)):
            if expected_result[i] == calculator.power(test_case[i]):
                print('{} Power-{}\nTest Case: {}\nExpected: {}\nOutput: {}'.format(
                    datetime.datetime.now().strftime("%Y-%m-%d %H:%M"),
                    i,
                    test_case[i],
                    expected_result[i],
                    calculator.power(test_case[i])))
                print('Pass\n')
                logger.info('Power-{}, {}, {}, {}, Pass, '.format(
                    i,
                    ' '.join((str(x) for x in test_case[i])),
                    calculator.power(test_case[i]),
                    expected_result[i]))

            else:
                print('{} Power-{}\nTest Case: {}\nExpected: {}\nOutput: {}'.format(
                    datetime.datetime.now().strftime("%Y-%m-%d %H:%M"),
                    i,
                    test_case[i],
                    expected_result[i],
                    calculator.power(test_case[i])))
                logger.info('Power-{}, {}, {}, {}, Fail, '.format(
                    i,
                    ' '.join((str(x) for x in test_case[i])),
                    calculator.power(test_case[i]),
                    expected_result[i]))
                print('Fail\n')
        print('------------------------------------------')
コード例 #2
0
ファイル: unitTesting.py プロジェクト: tayala2019/CIS104
    def testPower(self):
        self.assertEqual(calculator.power(2, 2), 4)
        self.assertEqual(calculator.power(3, 3), 27)
        self.assertEqual(calculator.power(-4, 2), 16)

        if __name__ == '__main__':
            unittest.main()
コード例 #3
0
ファイル: main.py プロジェクト: nunanas21/CIS104
  
    elif (oper == '-'):
        value = calculator.subtract (n1, n2)
        print (value)

    elif (oper == '*'):
        value = calculator.multiply (n1, n2)
        print (value)

    elif  (oper =='/'):
        value = calculator.divide (n1, n2) # hey pull up the calcultaor function
        print (value)

    elif (oper.upper == "I"): # if user inputs lower case or uppercase I 
         value = calculator.invert (n1)
         print (value)
 
    elif (oper == '^'):
         value = calculator.power (n1, n2 )
         print (value)
    elif (oper=='r'):
        calculator.recall
    elif (op == 's'):
        calculator.cur_store

    n1= float(input("Enter first number ")) #user enters the first number
    n2= float(input("Enter second number ")) #user enters the second number
    oper= str(input("Please select operation +, - , * , or / ")) # user selects the operative


コード例 #4
0
def test_power_exercise_4():
    test = calculator.power(3, 3)
    Cansw = 27
    tol = 10**(-6)
    assert abs(test - Cansw) < tol * max(abs(test), abs(Cansw))
コード例 #5
0
 def test_110_raises_one_number_to_the_power_of_another_number(self):
     self.assertEqual(power(2, 3), 8)
コード例 #6
0
        if (sval_str != ""):
            sval = float(sval_str)
            if (op == '+'):
                result = calculator.add(fval, sval)
                print("\n" + str(result))

            elif (op == '-'):
                result = calculator.subtract(fval, sval)
                print("\n" + str(result))

            elif (op == '/'):
                result = calculator.divide(fval, sval)
                print("\n" + str(result))

            elif (op == '*'):
                result = calculator.multiply(fval, sval)
                print("\n" + str(result))

            elif (op == '^'):
                result = calculator.power(fval, sval)
                print("\n" + str(result))
        print(">", end='', flush=True)
        fval_str = str(result)
        sval_str = ""
        which_num = 1
        expr_done = True

    #Exits the program when x is pressed.
    if (curr_key == 'X' or curr_key == 'x'):
        break
コード例 #7
0
def test_power():
    results = power(3, 2)
    assert results == 9

    results = power(3, 3)
    assert results == 27
コード例 #8
0
def test_power_():
    output = calculator.power(0, 5)
    assert output == 0
コード例 #9
0
 def test_power(self):
     assert 729 == calculator.power(9, 3)
コード例 #10
0
ファイル: test_calculator.py プロジェクト: alancl3ary/PBD_AC
 def testPower(self):
     self.assertEqual(4, power(2, 2))
     self.assertEqual(0.25, power(2, -2))
     self.assertEqual(4.0, power(16, .5))
     self.assertEqual(100000, power(10, 5))
     self.assertEqual(0.00047018498457599973, power(.6, 15))
コード例 #11
0
    def test_power(self):
        self.assertEqual(cl.power(0, 2), 0.0)
        self.assertEqual(cl.power(2, 0), 1.0)
        self.assertEqual(cl.power(2, 2), 4.0)
        self.assertEqual(cl.power(2, 3.2), 9.19)
        self.assertEqual(cl.power(2.4, 1.2), 2.859)
        self.assertEqual(cl.power(2.4, 2), 5.76)

        with self.assertRaises(ValueError):
            cl.power(-2, 1.5)

        with self.assertRaises(TypeError):
            cl.power('abc', 3)
            cl.power(3, 'abc')
            cl.power(True, 3)
            cl.power(3, True)
コード例 #12
0
def main():
    import tkinter as tk

    query = takeCommand()

    while(query != None):


        if ('answer of'  in query.lower() or  'calculate' in query.lower() or  '/' in query.lower()  or  'x' in query.lower()  or  '-' in query.lower()  or  '+' in query.lower()  or  'tan' in query.lower()  or  'sine' in query.lower()  or  'cosine' in query.lower() or  'power' in query.lower()):
            speak("Working on it...")
            string = query
            #calculate 10 + 10 
            string = re.findall('\d+', string)

            if (len(string) < 2):
                
                operand1 = int(string[0])
                # print(operand1)
                
                if 'sine'  in query.lower():
                    answer = sin(operand1)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))
                elif 'cosine' in query.lower():
                    answer = cos(operand1)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))
                elif 'tan'  in query.lower():
                    answer = tan(operand1)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))
            else:
                operand1 = int(string[0])
                operand2 = int(string[1])
   
            # print("string: "+str(string))
            # print("operand1:"+str(operand1))
            # print("operand2:"+str(operand2))

                if ('+') in query.lower():
                    answer = Sum(operand1,operand2)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))
            
                elif ('x') in query.lower():
                    answer = multiply(operand1,operand2)
                    speak("Answer is :"+str(answer))
                    output.delete('1.0',END)
                    InsertText("Answer is : "+ str(answer))


                elif ('/') in query.lower():
                    answer = divide(operand1,operand2)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))


                elif ('-') in query.lower():
                    answer = subtract(operand1,operand2)
                    if int(answer) <0:
                        speak("Answer is negtive:"+str(answer))
                    else:
                        speak("Answer is : "+str(answer))                    
        
                    InsertText("Answer is : "+ str(answer))


                elif ('power') in query.lower():
                    answer = power(operand1,operand2)
                    speak("Answer is :"+str(answer))
                    InsertText("Answer is : "+ str(answer))

                else:
                    speak("This is so hard for me, Im sorry")
                    InsertText("This is so hard for me, Im sorry")


            break

        if ('wikipedia') in query.lower():
            speak('searching on wikipedia...')
            query = query.replace("wikipedia","")
            results = wikipedia.summary(query, sentences=2)
            # print(results)
            if results == False:
                speak("I didnt find any information")
                InsertText("I didnt find any information")
            else:
                print(results)
                InsertText(results)
                speak(results)
                
            break

        if ('search on google for' in query.lower()  or 'google for' in query.lower() or 'search for' in query.lower()):
            text = query
            text = text.replace('google','')
            text = text.replace('search on' or 'search for' or 'search about','')
            speak("Searching on google..")
            # InsertText("Searching on google..")
            
            links = googleSearch(text)
            speak('I found this links may it could help you...')
            # print(links)
            InsertText(links)                
            break

        if (('translate' in query.lower()) or ('french' in query.lower())  or ('spanish' in query.lower())  or ('german' in query.lower())  or ('italian' in query.lower())  ):
            if ('french') in query.lower():
                ret = toFrench(query)
                print(ret)
                speakforeigner(ret)
                InsertText(ret)
                voice = engine.getProperty('voices')[1] 
                engine.setProperty('voice', voice.id)

            elif ('german') in query.lower():
                ret = toGerman(query)
                print(ret)
                speakforeigner(ret)
                InsertText(ret)
                voice = engine.getProperty('voices')[1]
                engine.setProperty('voice', voice.id)
            
            elif ('spanish') in query.lower():
                ret = toSpanish(query)
                print(ret)
                speakforeigner(ret)
                InsertText(ret)
                voice = engine.getProperty('voices')[1]
                engine.setProperty('voice', voice.id)

            elif ('italian') in query.lower():
                ret = toItalian(query)
                print(ret)
                speakforeigner(ret)
                InsertText(ret)
                voice = engine.getProperty('voices')[1]
                engine.setProperty('voice', voice.id)

            elif ('portuguese') in query.lower():
                ret = toPortuguese(query)
                print(ret)
                speakforeigner(ret)
                InsertText(ret)
                voice = engine.getProperty('voices')[1]
                engine.setProperty('voice', voice.id)
                
            else:
                speakforeigner("Im sorry I dont understand this language")
                InsertText("Im sorry I dont understand this language")

            break

        if ('open youtube') in query.lower():
            url = "youtube.com"
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            speak("hold on")
            webbrowser.get(chrome_path).open(url)
            break
 
        if ('open google'  in query.lower()   or 'google' in query.lower()) :
            url = "google.com"
            speak("Im wondering what are you looking for")
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            webbrowser.get(chrome_path).open(url)
            break

        if 'open facebook' in query.lower():
            url = "facebook.com"
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            speak("Im on it")
            webbrowser.get(chrome_path).open(url)
            break

        if 'open linkedin' in query.lower():
            url = "linkedin.com"
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            speak("lets get professional")
            webbrowser.get(chrome_path).open(url)
            break

        if 'open stackover flow' in query.lower():
            url = "stackoverflow.com"
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            speak("hold on")
            webbrowser.get(chrome_path).open(url)
            break

        if 'open soundcloud' in query.lower():
            url = "soundcloud.com"
            chrome_path="C:/Program Files (x86)/Google/Chrome/Application/chrome.exe %s"
            speak("Im on it")
            webbrowser.get(chrome_path).open(url)
            break

        if ('play music' or 'play my list' or 'open my playlist' or 'open my favorite songs')in query.lower():
            songs_dir = 'E:\\desktop\\FUN\\Myplaylist' 
            songs = os.listdir(songs_dir)
            speak("playlist shuffle..")
            InsertText('playlist shuffle..')
            
            print(songs)
            os.startfile(os.path.join(songs_dir, songs[0]))
            break

        if ('the time now' in query.lower() or 'time' in query.lower() or 'what time is it' in query.lower() or 'how much oclock' in query.lower()):
            time = timevalue
            speak("The time is")
            speak(time)
            InsertText(time)
            

            break

        if ('what is the date' in query.lower() or 'What date is it' in query.lower() or 'What day is it' in query.lower() or "today's date" in query.lower()):
            date = datevalue
            speak("Today is ")
            speak(date)
            InsertText(date)
            break

        if ('what is the temperature now' or 'What is the weather today' or 'is it hot today' or "is it cold today") in query.lower():
            temp = tempvalue
            speak("Today's temperture is ")
            speak(temp)
            InsertText(temp)
            break

        if ('open my code' or 'open code' or 'your code') in query.lower():
            code_dir = 'C:\\Users\\Abdullah\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe' 
            os.startfile(os.path.join(code_dir))
            break

        if ('f*** you' or 'm**********r' or 'you are disgusting'  or 'ugly' or 'bitch' or 'you are stupid' or "you're stupid") in query.lower():
            speak('You are so rude, I will not respond to that')
            InsertText('You are so rude, I will not respond to that')
            break

        if ('love you' in query.lower() or 'would you marry me' in query.lower()):
            speak('oh, you are so sweet')
            InsertText('oh, you are so sweet')
            break

        if 'email to tina' in query.lower():
            try:
                speak("what should I send")
                content = takeCommand()
                to ='*****@*****.**'
                sendEmail(to,content)
                speak("Email has been sent successfully")
                break
            except Exception as e:
                print(e)
                speak("There is a problem in email security, please check it and try again")
                break

        if ('draw' in query.lower() or 'drew' in query.lower()):
            speak("Lets draw, to save you drawing just press control  S")
            InsertText('press " CTRL+S" to save your draw..')
            drawStart()
            
            break

        if ('game' in query.lower()):
            speak("lets play a game")
            InsertText("Have fun..")
            startGame()

            
            break
    
        else:
            speak("Im not sure I understand")
            speak("Say it again")
            InsertText("Im not sure I understand\nSay it again")
            query= takeCommand()
コード例 #13
0
ファイル: main.py プロジェクト: sagrawal19/CIS104
            strRightValue = input("Enter second number: ")
        rightValue = int(strRightValue)
    except ValueError:
        print("No.. input string is not a number. It's a string")
    if choice == '1':
        currentValue = calculator.add(leftValue, rightValue)
        print(leftValue, "+", rightValue, "=", currentValue)
        calculator.setMemoryValue(currentValue)
        print(calculator.getMemoryValue())

    elif choice == '2':
        currentValue = calculator.subtract(leftValue, rightValue)
        print(leftValue, "-", rightValue, "=", currentValue)
        calculator.setMemoryValue(currentValue)

    elif choice == '3':
        currentValue = calculator.multiply(leftValue, rightValue)
        print(leftValue, "*", rightValue, "=", currentValue)
        calculator.setMemoryValue(currentValue)

    elif choice == '4':
        currentValue = calculator.divide(leftValue, rightValue)
        print(leftValue, "/", rightValue, "=", currentValue)
        calculator.setMemoryValue(currentValue)
    elif choice == '5':
        currentValue = calculator.power(leftValue, rightValue)
        print(leftValue, "^", rightValue, "=", currentValue)
        calculator.setMemoryValue(currentValue)
    else:
        print("Invalid input")
コード例 #14
0
ファイル: test_calculator.py プロジェクト: cookjw/mockacademy
 def test_power(self):   
     self.assertEqual(power(3,4), 81)    
コード例 #15
0
def test_power():
    results = power(2, 4)  #changing the value of power
    assert results == 16

    results = power(2, 3)
    assert results == 8
コード例 #16
0
def test_power():
    output = calculator.power(10, 5)
    assert output == 100000
コード例 #17
0
 def test_power_integers(self):
     exp = power(2, 3)
     self.assertEqual(exp, 8)
コード例 #18
0
def test_power_zero():
    output = calculator.power(10, 0)
    assert output == 1
コード例 #19
0
 def test_power_floats(self):
     exp = power(2, 4.56)
     self.assertEqual(exp, 23.58830747665761)
コード例 #20
0
def test_power_exercise_4(arg, expected_output):
    assert abs(calculator.power(arg[0], arg[1]) - expected_output) < eps
コード例 #21
0
 def test_power(self):
     assert 1000 == calculator.power(10, 3)
コード例 #22
0
 def test_power(self):
     assert 4 == calculator.power(4, 1)
コード例 #23
0
 def test_power(self):
     assert 25 == calculator.power(5, 2)
コード例 #24
0
def test_power_6(x, y):
    test = calculator.power(x[0], x[1])
    tol = 10**(-5)
    assert abs(test - y) <= tol * max(abs(test), abs(y))
コード例 #25
0
ファイル: main.py プロジェクト: KelseySlavin/CIS104
if op == '+':
    value = calculator.add(float(num_1), float(num_2))
    print(num_1, "+", num_2, "=", value)
elif op == '-':
    value = calculator.sub(float(num_1), float(num_2))
    print(num_1, "-", num_2, "=", value)
elif op == '*':
    value = calculator.multi(float(num_1), float(num_2))
    print(num_1, "*", num_2, "=", value)
elif op == '/':
    value = calculator.divide(float(num_1), float(num_2))
    print(num_1, "/", num_2, "=", value)

elif op == 'memory_store':
    calculator.memory_store(value)

elif op == 'memory_return':
    value = calculator.memory_return()
    print = (value)

elif op == 'memory_clear':
    calculator.memory_clear

elif op == 'invert':
    value = calculator.invert(num_1)
    print(value)

elif op == 'power':
    value = calculator.power(float(num_1), float(num_2))
    print(value)
コード例 #26
0
print(math.fabs(-1.2))


# math 전체를 가지고 오지 않고
# 필요한 ceil, fsum만 가지고 옴
# fsum을 연산할 때는 [] list를 이용해서!
from math import ceil, fsum

print(ceil(1.2))
print(fsum([3, 5 ,6 ,7 ,8]))


# as로 fsum함수를 다른 이름 '리스트사용'으로
# 바꿔줄 수 있음, 함수 = 리스트사용
from math import fsum as 리스트사용

print(리스트사용([3, 5 ,6 ,7 ,8]))


# 내가 만든 calculator 폴더에 있는 것들을
# import(수입)해올 수 가 있음!
from  calculator import plus, minus, times, division, remainder, negation, power

print(plus(1, 2))
print(minus(6, 3))
print(times(2, 3))
print(division(8, 2))
print(remainder(10,3))
print(negation(3, 2))
print(power(2, 6))
コード例 #27
0
 def test_power(self):
     self.assertEqual(calculator.power(4, 2), 16)
     self.assertEqual(calculator.power(4, 0), 1)
     self.assertEqual(calculator.power(4, -2), 1 / 16)
     self.assertEqual(calculator.power(4, 0.5), 2)