Guest User

Untitled

a guest
Nov 14th, 2018
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.56 KB | None | 0 0
  1. """
  2. Case 1: B, C are connected to A
  3. """
  4.  
  5. class A(object): pass
  6. class B(A): pass
  7. class C(A): pass
  8. class D(B, C): pass
  9.  
  10. assert D.__mro__ == (D, B, C, A, object)
  11.  
  12. """
  13. Case 2: G, H have similar orderings
  14. """
  15.  
  16. class E(object): pass
  17. class F(object): pass
  18. class G(F, E): pass
  19. class H(F, E): pass
  20. class I(G, H): pass
  21.  
  22. assert I.__mro__ == (I, G, H, F, E, object)
  23.  
  24. """
  25. Case 3: L, M have bad orderings
  26. """
  27.  
  28. class J(object): pass
  29. class K(object): pass
  30. class L(J, K): pass
  31. class M(K, J): pass
  32.  
  33. try:
  34. class N(L, M): pass
  35. except TypeError:
  36. print('Cannot get MRO for (J, K) and (K, J)')
Add Comment
Please, Sign In to add comment