Justin Clark-Casey (justincc)
5557b523fd
Add more sub-tests to TestJsonSetValue for paths containing []{} without {} delineation.
...
As expected, values are not set and the set call returns FALSE (0).
As a reminder, these tests are not currently running on jenkins continuous integration as the functionality is only available on .net 4 (mono 2.8 and later).
2013-02-13 01:38:33 +00:00
Justin Clark-Casey (justincc)
b1a165a39a
Extend JsonTestSetValue() with tests for escaping brackets, periods and unbalanced braces from paths
...
The sub-tests that are commented out are currently those which fail unexpectedly based on my understanding of the path syntax
2013-02-13 01:25:30 +00:00
Justin Clark-Casey (justincc)
70e641c708
Add test for array as root element in TestJsonCreateStore()
2013-02-13 00:51:45 +00:00
Justin Clark-Casey (justincc)
4b797f2ead
Extend TestJsonRemoveValue() with tests for non-penultimate nodes and arrays
2013-02-13 00:12:20 +00:00
Justin Clark-Casey (justincc)
992ef9e971
Extend TestJsonCreateStore() with a one key input and an input with raw number values
2013-02-12 23:00:24 +00:00
Justin Clark-Casey (justincc)
058d477ce7
Re-enable subtest for single quoted token in TestJsonSetValueJson()
...
This is in response to the resolution of http://opensimulator.org/mantis/view.php?id=6540
2013-02-12 20:51:36 +00:00
Mic Bowman
4b8c22ecfa
Adds the parameter for OSD serialization to encode default values. This
...
makes the JsonStore get/set operations symmetric.
2013-02-12 11:10:17 -08:00
Mic Bowman
d3b2cdc2b4
Fix handling of string values in JsonSetValueJson(). There are
...
some oddities with empty strings: the Json serializer treats them
as default values and does not return them in serialized hashes.
2013-02-11 19:55:10 -08:00
Justin Clark-Casey (justincc)
586def0bcc
Add regression TestJsonSetValueJson()
...
The part to test setting of single leaf-node string tokens is currently commented out.
See http://opensimulator.org/mantis/view.php?id=6540
2013-02-12 01:27:38 +00:00
Justin Clark-Casey (justincc)
d55974bcb7
Add regression TestJsonGetValueJson()
2013-02-11 23:47:49 +00:00
Justin Clark-Casey (justincc)
6924bd21f4
Add regression TestJsonTestPathJson()
2013-02-11 23:10:07 +00:00
Justin Clark-Casey (justincc)
9d001e40e7
Add section to TestJsonGetValue() to test call on a sub-tree
2013-02-11 22:56:43 +00:00
Justin Clark-Casey (justincc)
8fcfd82241
Extend TestJsonTestPath() for non-terminating section of path (i.e. one that does not point to a value/leaf)
2013-02-11 22:44:25 +00:00
Justin Clark-Casey (justincc)
cbb8d82c7d
Add section to TestJsonSetValue() to test attempted set of value where the penultimate section of path does not exist
2013-02-11 22:28:50 +00:00
Justin Clark-Casey (justincc)
c72c189864
Add test to try reading notecard into an invalid path in TestJsonReadNotecard() regression test
2013-02-11 22:16:07 +00:00
Mic Bowman
0a297a0e52
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-02-08 22:43:56 -08:00
Mic Bowman
7bb82c8f2e
Make JsonStore path parsing more robust. Should fix the
...
invalid path problem.
2013-02-08 22:43:15 -08:00
Justin Clark-Casey (justincc)
6935bec0ab
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-02-09 01:11:41 +00:00
Justin Clark-Casey (justincc)
a8bc08ebe6
Change TestDestroyStore() and TestJsonRemoveValue() to reflect the fact that the return values have changed.
2013-02-09 01:10:53 +00:00
Mic Bowman
6d825d7ea2
Broaden the internal OSD type checks to parse JSON that has
...
non string values.
2013-02-08 15:46:42 -08:00
Mic Bowman
e93defd0ca
Adds size limits to JsonStore. Adds a separate configuration
...
variable to enable binding to dynamic attributes.
2013-02-08 15:07:43 -08:00
Mic Bowman
2b5eba9c74
Fix the return values for JsonDestroyStore, JsonRemoveValue, and JsonSetValue.
...
Fix the link message status when reading a notecard.
2013-02-08 12:00:16 -08:00
Justin Clark-Casey (justincc)
42f724f380
Refine TestJsonReadNotecard() and use / instead of . to separate paths.
...
An attack of the stupid meant that I was using / as a path separator.
Fixing this makes the tests behave better, though still with some questions.
Also, I imagine / shouldn't really put data in the root as that's not a valid identifier.
This commit also fix the / mistake in other tests those this does not affect their outcomes.
2013-02-08 01:59:27 +00:00
Justin Clark-Casey (justincc)
528f23beab
Extend TestJsonReadNotecard() for reads to non-root locations and fake stores.
...
Assertions for loading to non-root paths are currently commented out because this doesn't seem to be working. Will be raising mantis to resolve.
2013-02-08 01:02:25 +00:00
Justin Clark-Casey (justincc)
9c9b48b29a
Stop wrongly create a receiving store already populated with "Hello":"World" in TestJsonReadNotecard()
2013-02-08 00:38:30 +00:00
Justin Clark-Casey (justincc)
24bfdbfb80
Extend TestJsonWriteNotecard() regression test for cases with fake paths and fake stores.
...
Also separates out TestJsonWriteReadNotecard() into separate write and read tests
2013-02-08 00:36:20 +00:00
Justin Clark-Casey (justincc)
bef8961578
Extend TestJsonSetValue() regressio ntes tto test against a fake store
2013-02-08 00:04:05 +00:00
Justin Clark-Casey (justincc)
be982666fb
Extend TestJsonTestPath() regression test with checks against fake values and fake stores
2013-02-08 00:01:06 +00:00
Justin Clark-Casey (justincc)
75f1e04315
Add tests for removing fake values/from fake store in TestJsonRemoveValue()
...
Again, need to check if returning true for removing a value that doesn't exist is most appropriate.
2013-02-07 23:58:19 +00:00
Justin Clark-Casey (justincc)
715d6f2da1
Add testing for getting non-existing values and values from a non-existing datastore to TestJsonGetValue()
2013-02-07 23:52:28 +00:00
Justin Clark-Casey (justincc)
2e86978b60
Add TestJsonDestoreStoreNotExists()
...
This still returns true even if we ask to destroy a store that does not exist.
Need to check that this is more appropriate behaviour.
2013-02-07 23:30:03 +00:00
Justin Clark-Casey (justincc)
9e17dc3daa
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-02-07 23:09:47 +00:00
Justin Clark-Casey (justincc)
c135c3224f
Fix a recent regression in e17392a where JsonSetValue() stopped working (probably other functions as well).
...
Fix is to call through to the no-arg constructor from the string constructor in JsonStore, which I suspect was just forgotten.
This was actually picked up by the TestJsonSetValue() regression test failing
But this isn't being run on jenkins due to the .net version issue.
This commit also puts the full stack trace in logged messages and makes these error level messages instead of info
2013-02-07 23:08:19 +00:00
Justin Clark-Casey (justincc)
2c5d24d394
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2013-02-07 02:19:53 +00:00
Justin Clark-Casey (justincc)
3657a08844
Add TestJsonWriteReadNotecard() regression test
2013-02-07 02:19:26 +00:00
Mic Bowman
e17392acbb
Enables script access to the per object dynamic attributes through the JsonStore
...
script functions. Adds JsonAttachObjectStore to associate a store identifier with
an object (scripts can only access the store in their host object, this could be
extended but isn't necessary for now).
Note this opens a method to the DAMap OSDMap. This will be removed later, but
greatly simplifies the code for now.
The JsonStore and these scripts are disabled by default.
2013-02-06 17:29:17 -08:00
Justin Clark-Casey (justincc)
4d1758985f
Make json store tests operate on a single thread to ensure we don't run into any race related test failures in the future.
2013-02-07 00:54:09 +00:00
Justin Clark-Casey (justincc)
eddfed3812
Allow JsonReadNotecard() to accept the name of the notecard as well as the asset ID.
...
Agreed in discussion with cmickeyb.
This is to make this consistent with similar existing LSL/OSSL functions such as llTriggerSound() and osNpcLoadAppearance() that allow an item name or an asset id.
2013-02-06 01:37:22 +00:00
Mic Bowman
1e0420431f
Move the JsonStore regular expressions to static variables to avoid
...
recompiling on every operation. Added JsonList2Path script function
to simplify array iteration.
2013-01-31 14:53:16 -08:00
Mic Bowman
a0ef3df194
Add JsonTestStore to determine if a JsonStore is associated with
...
a particular UUID.
2013-01-30 14:45:03 -08:00
Justin Clark-Casey (justincc)
d42c7afe3f
Add JsonDestroyStore() basic regression test
2013-01-30 05:56:30 +00:00
Justin Clark-Casey (justincc)
5a22efe69c
refactor: Make invocations of json store functions from the regression test simpler
2013-01-30 05:49:28 +00:00
Justin Clark-Casey (justincc)
addf9ada49
Add regression test for script func JsonRemoveValue()
2013-01-30 05:39:34 +00:00
Justin Clark-Casey (justincc)
39700445f2
minor: change name of json script tests to JsonStoreScriptModuleTests instead of copy/pasted LSL_ApiInventoryTests
2013-01-29 04:36:41 +00:00
Justin Clark-Casey (justincc)
e0f4e91d22
Try ignoring json tests if they can't be run due to being on <=.net 3.5
2013-01-29 04:26:47 +00:00
Justin Clark-Casey (justincc)
d977bb77cb
Disable json tests for now - I see this is failing on jenkins because mono 2.4.3 doesn't have Funcs >5 params, though mono 2.6 onwards does.
...
Standardize logging in JsonStoreScriptModule and some minor code formatting.
2013-01-25 03:19:56 +00:00
Justin Clark-Casey (justincc)
614d4eda3e
See if getting the registering JsonReadNotecard with MethodInfo works around an apparent issue with registering methods with more than 5 parameters on mono 2.4.3
2013-01-25 03:02:08 +00:00
Justin Clark-Casey (justincc)
4f52acaa83
Increase logging by enabling during test setup rather than during individual tests of for JsonStore
2013-01-25 02:32:38 +00:00
Justin Clark-Casey (justincc)
8c68451856
Enable logging in new json store tests to find out why they fail on jenkins but not locally.
2013-01-25 02:22:24 +00:00
Justin Clark-Casey (justincc)
844e60da0f
Add JsonTestPath() regression test
2013-01-25 02:12:28 +00:00