Commit Graph

68 Commits (8da758becd7e6e859f283f02f9b2b5d5d092666b)

Author SHA1 Message Date
Shwoomple 056c1e6b11 lib/file.cpp: fix read fubctions. 2022-10-02 08:38:39 +05:30
BodgeMaster 89baeebc65 lib/file: Switch to using pointers for passing File objects around 2022-09-30 20:10:28 +02:00
Shwoomple 3449e3b9c4 lib/file: Implement broken file functions 2022-09-30 11:02:46 +05:30
Shwoomple c1d7801436 complete merge 2022-09-28 08:22:09 +05:30
Shwoomple 9610f4a4a2 lib/file: implement open function 2022-09-28 08:21:39 +05:30
BodgeMaster 47fd1f8970 test/nbt_read_write_helpers: Change unnecessarily long string to be just one above the allowed size 2022-09-26 23:53:53 +02:00
BodgeMaster 10b1d9fa0c lib/nbt: Start implementing NBT data types, make NBT::Helper::writeString() return an error instead of aborting the program
The former is finally some progress on getting NBT going,
though at this point it is all unvalidated work.
For all I know it might cause your computer to burst into flames,
grow an arm and a leg and an eye, and attack you with a sword.
But probably, it won’t do that and instead start working after I
have debugged it so much that I wish I could attack my PC with a sword.

The latter is the implementation of a change I prepared in a previous commit
when i added ErrorOrVoid.
2022-09-26 03:11:44 +02:00
BodgeMaster 398321e415 test/nbt*: Replace NBT::helper with NBT::Helper
Yes, I forgot to run the test suite before committing.
This is why we need CI.
2022-09-19 11:47:29 +02:00
BodgeMaster 629c999336 lib/nbt: Return correct error code from read functions (fixes #17) 2022-08-27 22:35:10 +02:00
BodgeMaster cdd17045d1 test/nbt_read_write_helpers: add more tests according to issue #43 2022-08-27 20:10:29 +02:00
BodgeMaster 5272636cb8 test/nbt_read_write_helpers: fix unit tests for readString() 2022-08-15 13:30:53 +02:00
BodgeMaster 91d16ea451 test/javacompat: add test for mismatched size 2022-08-15 12:24:03 +02:00
BodgeMaster c9ec524db1 test/nbt_size_helpers: Implement tests for valid input 2022-08-13 17:32:47 +02:00
BodgeMaster 73ae58e522 test/assert: Add line number to assertion failed message 2022-08-13 17:32:47 +02:00
BodgeMaster 149285c357 lib/nbt: Finish implementing containedDataLength, rename nextTagTotalSize->totalTagSize and nextTagDataLength->containedDataLength 2022-08-13 17:32:47 +02:00
BodgeMaster 0c92bdf8fd test/nbt_size_helpers: begin adding unit tests for lib/nbt's new nextTag size helpers 2022-08-13 17:32:47 +02:00
BodgeMaster 5400790e78 test/nbt*: rename files, move byte tag object test from helper test file into its own file 2022-08-13 17:32:47 +02:00
BodgeMaster a1f16e6f6b lib/cli: Fix the usage text generator not dealing well with absent sections 2022-08-12 11:59:42 +02:00
Shwoomple cb7b5ddba7 lib/cli: Add usage generator. 2022-08-12 13:35:56 +05:30
BodgeMaster aef91fe7cd test/nbt_helpers: Fix wrong test pass message 2022-08-04 07:50:20 +02:00
BodgeMaster 4af9003761 Code style: I just decided to accept that float and double exist and that we can just assume they are 32 and 64 bits repectively.
This isn't going to run on an Arduino or anything like that anyway.
2022-08-04 07:47:24 +02:00
Milan Suman 704b440d5a lib/nbt: Add tag classes 2022-08-04 00:01:12 +05:30
BodgeMaster e31bff0802 test/nbt_writestring_failure_mode: Add license information 2022-08-02 03:37:10 +02:00
BodgeMaster 5c73308934 Rename all headers from .h++ to .hpp
Idk why I did that in the first place. Probably bc hpp looks stupid.
But having a + in a file name bugs me just as much. And other ppl as well.
So I changed it.
2022-08-02 03:35:08 +02:00
BodgeMaster b59fe1857e lib/cli: minor refactoring to make things less confusing and nicer to use
I renamed "unpositional arguments" to "options" and "positional arguments" to "arguments".
This is intended to make the code more readable and easier to type out.
2022-08-02 03:16:54 +02:00
BodgeMaster 1308327fae tests: OCD fixes lol
sorry
2022-08-02 01:04:45 +02:00
BodgeMaster 4582c3e595 test/nbt_helpers: move the test that aborts to its own program 2022-08-02 00:41:11 +02:00
Milan Suman 4f1ad714bd lib/nbt.cpp: Implement writeString function 2022-07-28 17:15:04 +05:30
BodgeMaster b044503951 test/cli_argument_parser: get rid of useless parameters
(pointed out by compiler warning)
2022-07-23 10:55:03 +02:00
BodgeMaster 6baff11ebd test/cli_argument_parser: implement tests for generated error messages 2022-07-21 09:41:04 +02:00
BodgeMaster a51c65c9f2 test/javacompat: get rid of a compiler warning 2022-07-20 19:22:06 +02:00
BodgeMaster 0dcc579bb5 test/cli_arguments_parser: extend some tests, implement all remaining parser tests except checking for error messages 2022-07-20 19:16:02 +02:00
BodgeMaster a0d2974f0a test/cli_argument_parser: fix programmer-generated segfault 2022-07-20 08:46:06 +02:00
Milan Suman 4659946a2f src/test: free pointers 2022-07-20 12:13:47 +05:30
Milan Suman b5312aeb58 lib/nbt: implement readString NBT helper function 2022-07-20 12:08:04 +05:30
Milan Suman d315c6fcfc Merge branch 'broken' 2022-07-20 10:39:16 +05:30
Milan Suman 2f38636a27 lib/javacompat: implement exportJavaString 2022-07-20 10:38:55 +05:30
Milan Suman 0462756451 lib: rename java_string to javacompat 2022-07-20 08:44:56 +05:30
BodgeMaster 45538e156a lib/java_string: replace std::vector with std::string 2022-07-20 04:23:06 +02:00
BodgeMaster 34e30c0bd4 test/java_string: replace tabs with spaces, fix how tiny_utf8::string is being instantiated 2022-07-20 04:02:44 +02:00
BodgeMaster 09e2030a55 test/cli_argument_parser: More thorough unknwon flag test, add unknown unpositional argument test 2022-07-18 21:26:37 +02:00
Milan Suman 42336c560a Birthed an abomination, what the fuck 2022-07-18 12:13:10 +05:30
BodgeMaster 2cbf048f2e lib/cli: make flags return more accurate error codes
revealed by writing a test and it behaving differently from what I expected
2022-07-17 12:09:19 +02:00
BodgeMaster 4ceaca745b test/cli_argument_parser: notes outlining what additional tests are needed 2022-07-15 19:47:07 +02:00
BodgeMaster db6e543c5c test/cli_argument_parser: add a test for dealing with "empty" command lines 2022-07-15 19:46:20 +02:00
BodgeMaster 8835b90398 test/cli_argument_parser: rename everything to have nice long descriptive names
This is in preparation for adding more tests that require the same kinds of components.
2022-07-15 19:43:17 +02:00
BodgeMaster 3b1d288d1e test/cli_argument_parser add an assertion to the valid input test that expects the value of unpositional arguments that are not present to be "" 2022-07-15 13:44:56 +02:00
BodgeMaster b18a97713d test/cli_argument_parser: fix using delete instead of delete[] on pointer array 2022-07-15 11:47:19 +02:00
BodgeMaster 9ce979aa7c lib/cli: first unit test implemented 2022-07-15 11:33:02 +02:00
BodgeMaster a1223ea4b9 Minor improvements and fixes.
test/nbt_helpers: add a headline to output
Build system: remove comma from array that I added bc I thought it was correct sytax, it wasn't
lib/cli: change argument order of PositionalArgument constructor to fit in with Flag and UnpositionalArgument
lib/cli: properly define what is private and what is public in the ArgumentsParser class
2022-07-15 08:54:09 +02:00