Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,3 +41,4 @@ Skript loads files alphabetically, with folders being prioritized. To control lo
Currents plans include:
- multiline lambda expression
- making the test framework support extending over the skriptlang native test suit
- Auto casting for primitives, pdc.sk(new Byte,Integer etc)
Comment on lines 41 to +44
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Polish the TODO bullet punctuation.
“etc.” needs a period, and adding a space after the comma improves readability.

Proposed edit
-- Auto casting for primitives, pdc.sk(new Byte,Integer etc)
+- Auto casting for primitives, pdc.sk(new Byte, Integer etc.)
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Currents plans include:
- multiline lambda expression
- making the test framework support extending over the skriptlang native test suit
- Auto casting for primitives, pdc.sk(new Byte,Integer etc)
Currents plans include:
- multiline lambda expression
- making the test framework support extending over the skriptlang native test suit
- Auto casting for primitives, pdc.sk(new Byte, Integer etc.)
🧰 Tools
🪛 LanguageTool

[grammar] ~43-~43: Ensure spelling is correct
Context: ...tending over the skriptlang native test suit - Auto casting for primitives, pdc.sk(new ...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[style] ~44-~44: In American English, abbreviations like “etc.” require a period.
Context: ...for primitives, pdc.sk(new Byte,Integer etc)

(ETC_PERIOD)

80 changes: 80 additions & 0 deletions tests/pdc.sk
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
import:
java.util.HashMap
java.lang.Integer
java.lang.Byte

test "pdc basic set/get with typed pdt":

set {_key} to namespaced-key "plugin:test_int"

set {_key} within test-world for pdt integer to new Integer(42)
assert {_key} within test-world for pdt integer is 42 with "typed pdt get failed"


test "pdc overwrite typed value":

set {_key} to namespaced-key "plugin:test_overwrite"

set {_key} within test-world for pdt string to "a"
set {_key} within test-world for pdt string to "b"

assert {_key} within test-world for pdt string is "b" with "overwrite failed"


test "pdc delete typed value":

set {_key} to namespaced-key "plugin:test_delete"

set {_key} within test-world for pdt long to 100
delete {_key} within test-world for pdt long

assert {_key} within test-world for pdt long is not set with "delete failed"


test "pdc object serialization (byte_array implicit)":

set {_key} to namespaced-key "plugin:test_object"

set {_obj} to new HashMap()
{_obj}.put("a", 1)
{_obj}.put("b", 2)

set {_key} within test-world to {_obj}

set {_out} to {_key} within test-world
assert {_out}.get("a") is 1 with "object deserialize failed (a)"
assert {_out}.get("b") is 2 with "object deserialize failed (b)"


test "pdc remove object via null":

set {_key} to namespaced-key "plugin:test_object_remove"

set {_key} within test-world to "temp"
set {_key} within test-world to null

assert {_key} within test-world is not set with "object remove via null failed"


test "pdc holder vs direct pdc equivalence":

set {_key} to namespaced-key "plugin:test_holder"
set {_pdc} to test-world's pdc

set {_key} within test-world for pdt byte to new Byte(7)
assert {_key} within {_pdc} for pdt byte is 7 with "direct pdc access failed"


test "pdc boolean pdt":

set {_key} to namespaced-key "plugin:test_bool"

set {_key} within test-world for pdt boolean to true
assert {_key} within test-world for pdt boolean is true with "boolean pdt failed"


test "pdc default object missing returns none":

set {_key} to namespaced-key "plugin:test_missing"

assert {_key} within test-world is not set with "missing object did not return none"