• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

visgl / luma.gl / 25756190722

12 May 2026 07:06PM UTC coverage: 75.119% (+0.2%) from 74.932%
25756190722

push

github

web-flow
feat(arrow) Support RecordBatch stream to ArrowGPUTable (#2611)

5973 of 8932 branches covered (66.87%)

Branch coverage included in aggregate %.

271 of 333 new or added lines in 9 files covered. (81.38%)

3 existing lines in 2 files now uncovered.

13032 of 16368 relevant lines covered (79.62%)

831.06 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

69.57
/modules/test-utils/src/null-device/resources/null-command-encoder.ts
1
// luma.gl
2
// SPDX-License-Identifier: MIT
3
// Copyright (c) vis.gl contributors
4

5
import {CommandEncoder, CommandEncoderProps} from '@luma.gl/core';
6
import type {
7
  CommandBufferProps,
8
  RenderPassProps,
9
  ComputePass,
10
  ComputePassProps,
11
  QuerySet,
12
  CopyBufferToBufferOptions,
13
  CopyBufferToTextureOptions,
14
  CopyTextureToBufferOptions,
15
  CopyTextureToTextureOptions
16
} from '@luma.gl/core';
17
import type {NullDevice} from '../null-device';
18
import {NullBuffer} from './null-buffer';
19
import {NullCommandBuffer} from './null-command-buffer';
20
import {NullRenderPass} from './null-render-pass';
21

22
export class NullCommandEncoder extends CommandEncoder {
23
  readonly device: NullDevice;
24
  readonly handle: null = null;
85✔
25

26
  constructor(device: NullDevice, props: CommandEncoderProps) {
27
    super(device, props);
85✔
28
    this.device = device;
85✔
29
  }
30

31
  override destroy(): void {
32
    this.destroyResource();
23✔
33
  }
34

35
  finish(props: CommandBufferProps = {}): NullCommandBuffer {
23✔
36
    const commandBuffer = new NullCommandBuffer(this.device, props);
23✔
37
    this.destroy();
23✔
38
    return commandBuffer;
23✔
39
  }
40

41
  beginRenderPass(props: RenderPassProps): NullRenderPass {
42
    return new NullRenderPass(this.device, props);
1✔
43
  }
44

45
  beginComputePass(_props: ComputePassProps): ComputePass {
46
    throw new Error('ComputePass is not supported on NullDevice');
×
47
  }
48

49
  copyBufferToBuffer(options: CopyBufferToBufferOptions): void {
50
    if (!(options.sourceBuffer instanceof NullBuffer)) {
22!
NEW
51
      throw new Error('NullCommandEncoder.copyBufferToBuffer requires a NullBuffer source');
×
52
    }
53

54
    options.sourceBuffer.copyToBuffer(
22✔
55
      options.destinationBuffer,
56
      options.sourceOffset || 0,
44✔
57
      options.destinationOffset || 0,
44✔
58
      options.size
59
    );
60
  }
61

62
  copyBufferToTexture(_options: CopyBufferToTextureOptions) {
63
    throw new Error('copyBufferToTexture is not supported on NullDevice');
×
64
  }
65

66
  copyTextureToBuffer(_options: CopyTextureToBufferOptions): void {
67
    throw new Error('copyTextureToBuffer is not supported on NullDevice');
×
68
  }
69

70
  copyTextureToTexture(_options: CopyTextureToTextureOptions): void {
71
    throw new Error('copyTextureToTexture is not supported on NullDevice');
×
72
  }
73

74
  resolveQuerySet(_querySet: QuerySet): void {
75
    throw new Error('resolveQuerySet is not supported on NullDevice');
×
76
  }
77

78
  pushDebugGroup(groupLabel: string): void {}
79
  popDebugGroup() {}
80
  insertDebugMarker(markerLabel: string): void {}
81
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc