# Vulkan backend code coverage
(or missing thereof)
Expected:
- Various Adapter initialization failure cases
- Various error cases in Vulkan operations
- Validation layer stuff
- All the swapchain stuff
- Code guarded by toggles
- SubmitPendingCommands with no pending commands. (just dead code? need end2end tests)
Not expected, not covered by other backend investigation:
- Creating a vertex buffer of size UINT64_MAX (we add an extra padding byte), same for non-vertex non-index with the alignment to 4. (can't test because of enforcerange)
- Viewport width = 0 (there is special logic for this in Vulkan)
- Wrapping a shared image on a lost device
- Readonly depth stencil attachments for VulkanImageUsage (dead code remove it)
- [Some descriptor set allocation stress testing](https://analysis.chromium.org/coverage/p/chromium/file?host=chromium.googlesource.com&project=chromium/src&ref=refs/heads/main&revision=a87d6be71e67e4cad7266fc27e8c8d82846d38a0&path=//third_party/dawn/src/dawn/native/vulkan/DescriptorSetAllocator.cpp&platform=linux&test_suite_type=any&modifier_id=0#100)
Not expected, same as other backends
- Resolving query set (need to test sparsely written query sets)
- Timestamp writes on passes beginning and end
- WriteTimestamp in passes
- Scissor rect
- Pipeline statistics queries lol
- Sampler address modes