fix low level setting - add null check for attribute name
sample test file: Tests/test/org/bimserver/tests/lowlevel/TestCreateLists.java
This might make the test running without failure, but I am not so sure whether this is the behavior we want or whether the ...AsString list should be created in the first place (earlier in the test, during is applying AddAttributeChange). Uploading a file always keeps original strings for doubles in "...AsString" attributes, but the low level methods seem to be a bit inconsistent. Other methods might rely on this as well. Although IFC serializers apparently don't rely on the ...AsString attributes to be set, implementation of issue #765, would require them to be always set, for example.
Also this is an example of a test that does too much, so if something fails, it is not clear what is the failure. Adding assertions about the ..AsString attributes might mitigate this as well.
You can now use the updated TestCreateLists.java from 65b62b0 and 2a31e77 for a test-first approach. You need to fix class AddAttributeChange as well besides SetAttributeChange. Check SetAttributeAtIndexChange, this looks properly implemented and should work well. And then there is RemoveAttributeChange which seems not to handle the string attributes for floating point values currently.
I think the test does too much now, but given the startup time for tests with embedded server, I would keep it for now and not fragment the tests too much. So go ahead with implemenentation until the test is "green".