more tests for optional vs required