From e0893fc58d03e37d838a35fb32330fe2e206fdea Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:02:54 -0700 Subject: [PATCH 1/6] tweaks --- config.nims | 1 - swarmsim.nim | 7 +++++-- swarmsim/engine/network.nim | 2 +- tests/nim.cfg | 1 - 4 files changed, 6 insertions(+), 5 deletions(-) delete mode 100644 tests/nim.cfg diff --git a/config.nims b/config.nims index 0a0c126..e69de29 100644 --- a/config.nims +++ b/config.nims @@ -1 +0,0 @@ -switch("path", "$projectDir/src") \ No newline at end of file diff --git a/swarmsim.nim b/swarmsim.nim index 560bc73..1331ef4 100644 --- a/swarmsim.nim +++ b/swarmsim.nim @@ -1,5 +1,8 @@ # This is just an example to get you started. A typical binary package # uses this file as the main entry point of the application. -import ./swarmsim/schedulable -import ./swarmsim/eventdrivenengine +import ./swarmsim/engine/schedulableevent +import ./swarmsim/engine/eventdrivenengine + +export schedulableevent +export eventdrivenengine diff --git a/swarmsim/engine/network.nim b/swarmsim/engine/network.nim index aec3ac8..4c0b481 100644 --- a/swarmsim/engine/network.nim +++ b/swarmsim/engine/network.nim @@ -9,7 +9,7 @@ export options export sets export peer export eventdrivenengine -export Network +export types type ScheduledMessage = ref object of SchedulableEvent diff --git a/tests/nim.cfg b/tests/nim.cfg deleted file mode 100644 index 0f840a1..0000000 --- a/tests/nim.cfg +++ /dev/null @@ -1 +0,0 @@ ---path:".." From 84ae926b99876defd059e6e7cc5fb3e72822677b Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:03:11 -0700 Subject: [PATCH 2/6] updates --- .tool-versions | 1 + tests/config.nims | 1 + 2 files changed, 2 insertions(+) create mode 100644 .tool-versions create mode 100644 tests/config.nims diff --git a/.tool-versions b/.tool-versions new file mode 100644 index 0000000..9ff7c58 --- /dev/null +++ b/.tool-versions @@ -0,0 +1 @@ +nim 2.0.0 diff --git a/tests/config.nims b/tests/config.nims new file mode 100644 index 0000000..0f840a1 --- /dev/null +++ b/tests/config.nims @@ -0,0 +1 @@ +--path:".." From 3a750decc48d634b3066dc875efbc71943d8587b Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:04:32 -0700 Subject: [PATCH 3/6] move around --- tests/all_tests.nim | 10 +++++----- .../codex/dhttracker.nim => codex/tdhttracker.nim} | 0 .../teventdrivenengine.nim} | 0 .../engine/network.nim => engine/tnetwork.nim} | 0 tests/{swarmsim/engine/peer.nim => engine/tpeer.nim} | 0 .../tschedulableevent.nim} | 0 6 files changed, 5 insertions(+), 5 deletions(-) rename tests/{swarmsim/codex/dhttracker.nim => codex/tdhttracker.nim} (100%) rename tests/{swarmsim/engine/eventdrivenengine.nim => engine/teventdrivenengine.nim} (100%) rename tests/{swarmsim/engine/network.nim => engine/tnetwork.nim} (100%) rename tests/{swarmsim/engine/peer.nim => engine/tpeer.nim} (100%) rename tests/{swarmsim/engine/schedulableevent.nim => engine/tschedulableevent.nim} (100%) diff --git a/tests/all_tests.nim b/tests/all_tests.nim index 8fb10fb..d686df5 100644 --- a/tests/all_tests.nim +++ b/tests/all_tests.nim @@ -1,8 +1,8 @@ -import ./swarmsim/engine/eventdrivenengine -import ./swarmsim/engine/schedulableevent -import ./swarmsim/engine/network -import ./swarmsim/engine/peer -import ./swarmsim/codex/dhttracker +import engine/teventdrivenengine +import engine/tschedulableevent +import engine/tnetwork +import engine/tpeer +import codex/tdhttracker {.warning[UnusedImport]: off.} diff --git a/tests/swarmsim/codex/dhttracker.nim b/tests/codex/tdhttracker.nim similarity index 100% rename from tests/swarmsim/codex/dhttracker.nim rename to tests/codex/tdhttracker.nim diff --git a/tests/swarmsim/engine/eventdrivenengine.nim b/tests/engine/teventdrivenengine.nim similarity index 100% rename from tests/swarmsim/engine/eventdrivenengine.nim rename to tests/engine/teventdrivenengine.nim diff --git a/tests/swarmsim/engine/network.nim b/tests/engine/tnetwork.nim similarity index 100% rename from tests/swarmsim/engine/network.nim rename to tests/engine/tnetwork.nim diff --git a/tests/swarmsim/engine/peer.nim b/tests/engine/tpeer.nim similarity index 100% rename from tests/swarmsim/engine/peer.nim rename to tests/engine/tpeer.nim diff --git a/tests/swarmsim/engine/schedulableevent.nim b/tests/engine/tschedulableevent.nim similarity index 100% rename from tests/swarmsim/engine/schedulableevent.nim rename to tests/engine/tschedulableevent.nim From 4cf1b793e269e8b1381c973faa5c5c6fc0b9b7ac Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:09:04 -0700 Subject: [PATCH 4/6] import tweaks --- swarmsim/codex/dhttracker.nim | 9 +++------ swarmsim/engine.nim | 6 ++++++ tests/engine/teventdrivenengine.nim | 4 ++-- tests/engine/tnetwork.nim | 8 ++++---- tests/engine/tpeer.nim | 2 +- tests/engine/tschedulableevent.nim | 2 +- 6 files changed, 17 insertions(+), 14 deletions(-) create mode 100644 swarmsim/engine.nim diff --git a/swarmsim/codex/dhttracker.nim b/swarmsim/codex/dhttracker.nim index 444db4d..a62c6ce 100644 --- a/swarmsim/codex/dhttracker.nim +++ b/swarmsim/codex/dhttracker.nim @@ -1,13 +1,10 @@ -import ../engine/protocol -import ../engine/network -import ../engine/schedulableevent -import ../timeutils - import std/times import std/options import std/algorithm import std/tables -import sequtils +import std/sequtils + +import ../engine export protocol export options diff --git a/swarmsim/engine.nim b/swarmsim/engine.nim new file mode 100644 index 0000000..87939d0 --- /dev/null +++ b/swarmsim/engine.nim @@ -0,0 +1,6 @@ +import engine/protocol +import engine/network +import engine/schedulableevent +import timeutils + +export protocol, network, schedulableevent, timeutils \ No newline at end of file diff --git a/tests/engine/teventdrivenengine.nim b/tests/engine/teventdrivenengine.nim index cf980a5..2983fd6 100644 --- a/tests/engine/teventdrivenengine.nim +++ b/tests/engine/teventdrivenengine.nim @@ -4,8 +4,8 @@ import sugar import std/algorithm -import pkg/swarmsim/engine/schedulableevent -import pkg/swarmsim/engine/eventdrivenengine +import swarmsim/engine/schedulableevent +import swarmsim/engine/eventdrivenengine type TestSchedulable = ref object of SchedulableEvent diff --git a/tests/engine/tnetwork.nim b/tests/engine/tnetwork.nim index f1558fa..95e88a8 100644 --- a/tests/engine/tnetwork.nim +++ b/tests/engine/tnetwork.nim @@ -1,9 +1,9 @@ import unittest -import pkg/swarmsim/engine/eventdrivenengine -import pkg/swarmsim/engine/network -import pkg/swarmsim/engine/peer -import pkg/swarmsim/engine/protocol +import swarmsim/engine/eventdrivenengine +import swarmsim/engine/network +import swarmsim/engine/peer +import swarmsim/engine/protocol type FakeProtocol = ref object of Protocol diff --git a/tests/engine/tpeer.nim b/tests/engine/tpeer.nim index 73f76da..76a67a7 100644 --- a/tests/engine/tpeer.nim +++ b/tests/engine/tpeer.nim @@ -1,7 +1,7 @@ import std/unittest import std/sets -import pkg/swarmsim/engine/peer +import swarmsim/engine/peer suite "peer": test "should allow inclusion and membership tests on a HashSet": diff --git a/tests/engine/tschedulableevent.nim b/tests/engine/tschedulableevent.nim index 5bfd762..370d581 100644 --- a/tests/engine/tschedulableevent.nim +++ b/tests/engine/tschedulableevent.nim @@ -1,6 +1,6 @@ import unittest -import pkg/swarmsim/engine/schedulableevent +import swarmsim/engine/schedulableevent suite "schedulable event": test "should be ordered by time": From 6d6f0eecfedbb7aa82ef0f50643b4b2984c884ba Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:19:26 -0700 Subject: [PATCH 5/6] init with 'u64 --- tests/engine/teventdrivenengine.nim | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/tests/engine/teventdrivenengine.nim b/tests/engine/teventdrivenengine.nim index 2983fd6..0b20ed0 100644 --- a/tests/engine/teventdrivenengine.nim +++ b/tests/engine/teventdrivenengine.nim @@ -16,7 +16,7 @@ suite "event driven engine tests": test "should run schedulables at the right time": - let times = @[1, 10, 5].map(time => uint64(time)) + let times = @[1'u64, 10, 5].map(time => time) let schedulables = times.map(time => TestSchedulable(time: time)) let engine = EventDrivenEngine() @@ -30,8 +30,8 @@ suite "event driven engine tests": check(engine.nextStep().isNone) test "should allow clients to wait until a scheduled event happens": - let times = @[1, 2, 3, 4, 5, 6, 7, 8] - let schedulables = times.map(time => TestSchedulable(time: uint64(time))) + let times = @[1'u64, 2, 3, 4, 5, 6, 7, 8] + let schedulables = times.map(time => TestSchedulable(time: time)) let engine = EventDrivenEngine() let handles = schedulables.map(schedulable => @@ -46,8 +46,8 @@ suite "event driven engine tests": check(engine.currentTime == 8) test "should allow clients run until the desired simulation time": - let times = @[50, 100, 150] - let schedulables = times.map(time => TestSchedulable(time: uint64(time))) + let times = @[50'u64, 100, 150] + let schedulables = times.map(time => TestSchedulable(time: time)) let engine = EventDrivenEngine() engine.scheduleAll(schedulables) From 99060534eeda177a3e96fc0d40acc9c20d901d92 Mon Sep 17 00:00:00 2001 From: Jaremy Creechley Date: Fri, 18 Aug 2023 16:25:49 -0700 Subject: [PATCH 6/6] init with 'u64 --- tests/engine/teventdrivenengine.nim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/engine/teventdrivenengine.nim b/tests/engine/teventdrivenengine.nim index 0b20ed0..cf9501c 100644 --- a/tests/engine/teventdrivenengine.nim +++ b/tests/engine/teventdrivenengine.nim @@ -16,7 +16,7 @@ suite "event driven engine tests": test "should run schedulables at the right time": - let times = @[1'u64, 10, 5].map(time => time) + let times = @[1'u64, 10, 5] let schedulables = times.map(time => TestSchedulable(time: time)) let engine = EventDrivenEngine()