1. ╰─ cat example1.rb
  2. class Example1 < NTT::BgpFuzz::Test
  3. PEER = 3942
  4. SUT = "204.42.111.60"
  5. setup do
  6. #log
  7. peer.add name: "tx", local_as: 100, peer_ip: SUT
  8. peer.add name: "rx", local_as: 200, peer_ip: SUT, local_ip: "204.42.111.32", rx: true
  9. end
  10.  
  11. test name: 'blaab' do
  12. net = "1.2.3.0/24"
  13. path = [100, 42]
  14. peer[:tx].tx net: net, path: path
  15. if msg = peer[:rx].rx
  16. assert_equal msg.path, [PEER, 5]+path, msg: "bad path"
  17. assert_equal msg.nlris.size, 1, msg: "bad nlri size"
  18. assert_equal msg.net, net, msg: "bad network"
  19. else
  20. flunk "no route"
  21. end
  22. end
  23. end
  24. ╭─ ytti@ytti-rpki ~/git/bgpfuzz master 12:26:27
  25. ╰─ cat example2.rb
  26. class Example2 < NTT::BgpFuzz::Test
  27. setup { from_yaml }
  28.  
  29. test name: 'blaab' do
  30. net = yaml["routes"]["yaya"]["net"]
  31. path = yaml["routes"]["yaya"]["path"]
  32. peer[:tx].tx net: net, path: path
  33. if msg = peer[:rx].rx
  34. assert_equal msg.path, [yaml["sut"]["as"]] + path, msg: "bad path"
  35. assert_equal msg.nlris.size, 1, msg: "bad nlris"
  36. assert_equal msg.net, net, msg: "bad nlri"
  37. else
  38. flunk "no route"
  39. end
  40. end
  41. end
  42. ╭─ ytti@ytti-rpki ~/git/bgpfuzz master 12:26:29
  43. ╰─ cat example2.yaml
  44. ---
  45. sut:
  46. as: 3942
  47.  
  48. peers:
  49. tx:
  50. local_as: 100
  51. peer_ip: 204.42.111.60
  52. rx:
  53. local_as: 200
  54. peer_ip: 204.42.111.60
  55. local_ip: 204.42.111.32
  56.  
  57. routes:
  58. yaya: { net: "1.2.3.0/24", path: [100, 42] }
  59. baba: { net: "1.2.4.0/24", path: [100, 43] }
  60. ╭─ ytti@ytti-rpki ~/git/bgpfuzz master 12:26:31
  61. ╰─