Add and clear test for Operator and operator_set
This commit is contained in:
parent
5002fbe4ae
commit
3ae3d9fb2d
@ -67,20 +67,28 @@ class Operator():
|
|||||||
:*args: Operands for this operation
|
:*args: Operands for this operation
|
||||||
:returns: String with operator and his operands
|
:returns: String with operator and his operands
|
||||||
|
|
||||||
>>> op.mul.__txt__('1','2')
|
>>> from .mul import Mul
|
||||||
|
>>> mul= Mul()
|
||||||
|
>>> from .add import Add
|
||||||
|
>>> add = Add()
|
||||||
|
>>> from .sub import Sub
|
||||||
|
>>> sub = Sub()
|
||||||
|
>>> from .sub1 import Sub1
|
||||||
|
>>> sub1 = Sub1()
|
||||||
|
>>> mul.__txt__('1','2')
|
||||||
'1 * 2'
|
'1 * 2'
|
||||||
>>> op.add.__txt__('1','2')
|
>>> add.__txt__('1','2')
|
||||||
'1 + 2'
|
'1 + 2'
|
||||||
>>> f = save_mainOp('2 + 3',op.add)
|
>>> f = save_mainOp('2 + 3',add)
|
||||||
>>> op.mul.__txt__(f, '4')
|
>>> mul.__txt__(f, '4')
|
||||||
'( 2 + 3 ) * 4'
|
'( 2 + 3 ) * 4'
|
||||||
>>> f = save_mainOp('-3',op.sub1)
|
>>> f = save_mainOp('-3',sub1)
|
||||||
>>> op.sub1.__txt__(f)
|
>>> sub1.__txt__(f)
|
||||||
'- ( -3 )'
|
'- ( -3 )'
|
||||||
>>> op.sub1.__txt__('-3')
|
>>> sub1.__txt__('-3')
|
||||||
'- ( -3 )'
|
'- ( -3 )'
|
||||||
>>> f = save_mainOp('2 + 3',op.add)
|
>>> f = save_mainOp('2 + 3',add)
|
||||||
>>> op.sub1.__txt__(f)
|
>>> sub1.__txt__(f)
|
||||||
'- ( 2 + 3 )'
|
'- ( 2 + 3 )'
|
||||||
"""
|
"""
|
||||||
return self._render(self.txt, *args)
|
return self._render(self.txt, *args)
|
||||||
@ -91,20 +99,28 @@ class Operator():
|
|||||||
:*args: Operands for this operation
|
:*args: Operands for this operation
|
||||||
:returns: String with operator and his operands
|
:returns: String with operator and his operands
|
||||||
|
|
||||||
>>> op.mul.__tex__('1','2')
|
>>> from .mul import Mul
|
||||||
|
>>> mul= Mul()
|
||||||
|
>>> from .add import Add
|
||||||
|
>>> add = Add()
|
||||||
|
>>> from .sub import Sub
|
||||||
|
>>> sub = Sub()
|
||||||
|
>>> from .sub1 import Sub1
|
||||||
|
>>> sub1 = Sub1()
|
||||||
|
>>> mul.__tex__('1','2')
|
||||||
'1 \\\\times 2'
|
'1 \\\\times 2'
|
||||||
>>> op.add.__tex__('1','2')
|
>>> add.__tex__('1','2')
|
||||||
'1 + 2'
|
'1 + 2'
|
||||||
>>> f = save_mainOp('2 + 3',op.add)
|
>>> f = save_mainOp('2 + 3',add)
|
||||||
>>> op.mul.__tex__(f, '4')
|
>>> mul.__tex__(f, '4')
|
||||||
'( 2 + 3 ) \\\\times 4'
|
'( 2 + 3 ) \\\\times 4'
|
||||||
>>> f = save_mainOp('-3',op.sub1)
|
>>> f = save_mainOp('-3',sub1)
|
||||||
>>> op.sub1.__tex__(f)
|
>>> sub1.__tex__(f)
|
||||||
'- ( -3 )'
|
'- ( -3 )'
|
||||||
>>> op.sub1.__tex__('-3')
|
>>> sub1.__tex__('-3')
|
||||||
'- ( -3 )'
|
'- ( -3 )'
|
||||||
>>> f = save_mainOp('2 + 3',op.add)
|
>>> f = save_mainOp('2 + 3',add)
|
||||||
>>> op.sub1.__tex__(f)
|
>>> sub1.__tex__(f)
|
||||||
'- ( 2 + 3 )'
|
'- ( 2 + 3 )'
|
||||||
"""
|
"""
|
||||||
return self._render(self.tex, *args)
|
return self._render(self.tex, *args)
|
||||||
@ -115,19 +131,27 @@ class Operator():
|
|||||||
:*args: Operands for this operation
|
:*args: Operands for this operation
|
||||||
:returns: list with the operator surrounded by operands
|
:returns: list with the operator surrounded by operands
|
||||||
|
|
||||||
>>> op.mul.__p2i__(1,2)
|
>>> from .mul import Mul
|
||||||
[1, '*', 2]
|
>>> mul= Mul()
|
||||||
>>> f = save_mainOp([2, op.add, 3],op.add)
|
>>> from .add import Add
|
||||||
>>> op.mul.__p2i__(f, 4)
|
>>> add = Add()
|
||||||
['(', 2, '+', 3, ')', '*', 4]
|
>>> from .sub import Sub
|
||||||
>>> f = save_mainOp([op.sub1, 3],op.sub1)
|
>>> sub = Sub()
|
||||||
>>> op.sub1.__p2i__(f)
|
>>> from .sub1 import Sub1
|
||||||
['-', '(', '-', 3, ')']
|
>>> sub1 = Sub1()
|
||||||
>>> op.sub1.__p2i__(-3)
|
>>> mul.__p2i__(1,2)
|
||||||
['-', '(', -3, ')']
|
[1, *, 2]
|
||||||
>>> f = save_mainOp([2, op.add, 3],op.add)
|
>>> f = save_mainOp([2, add, 3],add)
|
||||||
>>> op.sub1.__p2i__(f)
|
>>> mul.__p2i__(f, 4)
|
||||||
['-', '(', 2, '+', 3, ')']
|
['(', 2, +, 3, ')', *, 4]
|
||||||
|
>>> f = save_mainOp([sub1, 3],sub1)
|
||||||
|
>>> sub1.__p2i__(f)
|
||||||
|
[-, '(', -, 3, ')']
|
||||||
|
>>> sub1.__p2i__(-3)
|
||||||
|
[-, '(', -3, ')']
|
||||||
|
>>> f = save_mainOp([2, add, 3],add)
|
||||||
|
>>> sub1.__p2i__(f)
|
||||||
|
[-, '(', 2, +, 3, ')']
|
||||||
"""
|
"""
|
||||||
if self.arity == 1:
|
if self.arity == 1:
|
||||||
op1 = self.l_parenthesis(args[0])
|
op1 = self.l_parenthesis(args[0])
|
||||||
@ -201,35 +225,6 @@ def save_mainOp(obj, mainOp):
|
|||||||
return Fake(obj)
|
return Fake(obj)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == '__main__':
|
|
||||||
#print(op.add.__tex__('1','2'))
|
|
||||||
#print(op.mul.__tex__('1','2'))
|
|
||||||
#print(op.sub.__tex__('1','2'))
|
|
||||||
#f = save_mainOp('2 + 3',op.add)
|
|
||||||
#print(op.mul.__txt__(f, '4'))
|
|
||||||
#f = save_mainOp('-3',op.sub1)
|
|
||||||
#print(op.sub1.__txt__(f))
|
|
||||||
#print(op.sub1.__txt__('-3'))
|
|
||||||
#f = save_mainOp('2 + 3',op.add)
|
|
||||||
#print(op.sub1.__txt__(f))
|
|
||||||
|
|
||||||
#from .fraction import Fraction
|
|
||||||
#f = Fraction(1, 2)
|
|
||||||
#print(op.add.__txt__(f.__txt__(),'2'))
|
|
||||||
#print(op.add.__tex__(f.__tex__(),'2'))
|
|
||||||
|
|
||||||
#print("\t op.can_be_operator('+') :" + str(op.can_be_operator('+')))
|
|
||||||
#print("\t op.can_be_operator('t') :" + str(op.can_be_operator('t')))
|
|
||||||
|
|
||||||
print("op.sub.__dict__ -> ", op.sub.__dict__)
|
|
||||||
print(op.sub == op.sub1)
|
|
||||||
#import doctest
|
|
||||||
#doctest.testmod()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# -----------------------------
|
# -----------------------------
|
||||||
# Reglages pour 'vim'
|
# Reglages pour 'vim'
|
||||||
# vim:set autoindent expandtab tabstop=4 shiftwidth=4:
|
# vim:set autoindent expandtab tabstop=4 shiftwidth=4:
|
||||||
|
@ -82,6 +82,11 @@ class Operator_set(object):
|
|||||||
>>> op.store_operator(Add())
|
>>> op.store_operator(Add())
|
||||||
>>> op._operators
|
>>> op._operators
|
||||||
{('+', 2): 'add'}
|
{('+', 2): 'add'}
|
||||||
|
>>> a = op.add
|
||||||
|
>>> a
|
||||||
|
+
|
||||||
|
>>> a.tex
|
||||||
|
'{op1} + {op2}'
|
||||||
>>> op.store_operator("+")
|
>>> op.store_operator("+")
|
||||||
Traceback (most recent call last):
|
Traceback (most recent call last):
|
||||||
...
|
...
|
||||||
|
Loading…
Reference in New Issue
Block a user