diff --git a/.github/workflows/gen_coverage_report.yml b/.github/workflows/gen_coverage_report.yml new file mode 100644 index 0000000000..092683d83a --- /dev/null +++ b/.github/workflows/gen_coverage_report.yml @@ -0,0 +1,43 @@ +name: Generate Coverage Report +on: + workflow_dispatch: + schedule: + - cron: "0 6 * * 1" + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +permissions: + contents: write + +jobs: + gen-coverage-report: + runs-on: ubuntu-latest + permissions: + id-token: write + contents: write + steps: + - uses: actions/checkout@v5 + with: + token: ${{ secrets.GH_CQ_BOT }} + - name: Set up Go 1.x + uses: actions/setup-go@v6 + with: + go-version: "1.25" + cache: false + - name: Generate Coverage Report + run: make coverage + + - name: Create Pull Request + uses: peter-evans/create-pull-request@v7 + with: + # required so the PR triggers workflow runs + token: ${{ secrets.GH_CQ_BOT }} + branch: chore/update_coverage_report + base: main + title: "chore: Update coverage report" + commit-message: "chore: Update coverage report" + body: This PR was created by a scheduled workflow to update the coverage report + author: cq-bot + labels: automerge diff --git a/.github/workflows/lint_markdown.yml b/.github/workflows/lint_markdown.yml index 886b25e861..ce15f98f28 100644 --- a/.github/workflows/lint_markdown.yml +++ b/.github/workflows/lint_markdown.yml @@ -23,7 +23,7 @@ jobs: - name: Vale uses: errata-ai/vale-action@dcded780f1ff68e2558e802a165a484a4a3e2fb8 with: - vale_flags: "--glob=!{docs/testdata/*,CHANGELOG.md,.github/styles/proselint/README.md,examples/simple_plugin/docs/*.md}" + vale_flags: "--glob=!{docs/testdata/*,CHANGELOG.md,.github/styles/proselint/README.md,examples/simple_plugin/docs/*.md,coverage.md}" filter_mode: nofilter version: '3.0.3' env: @@ -39,4 +39,4 @@ jobs: with: files: . config_file: .markdownlint.yaml - ignore_files: "{docs/testdata/*,CHANGELOG.md,examples/simple_plugin/docs/*.md}" + ignore_files: "{docs/testdata/*,CHANGELOG.md,examples/simple_plugin/docs/*.md,coverage.md}" diff --git a/Makefile b/Makefile index 8d6857c282..78a1355d29 100644 --- a/Makefile +++ b/Makefile @@ -15,3 +15,18 @@ benchmark-ci: go install go.bobheadxi.dev/gobenchdata@v1.2.1 go test -bench . -benchmem ./... -run="^$$" | grep -v 'BenchmarkWriterMemory/' | gobenchdata --json bench.json rm -rf .delta.* && go run scripts/benchmark-delta/main.go bench.json + +.PHONY: coverage +coverage: + go test -timeout 15m -coverprofile=coverage.out.tmp ./... + cat coverage.out.tmp | grep -vE "MockGen|codegen|mocks" > coverage.out + rm coverage.out.tmp + echo "| File | Function | Coverage |" > coverage.md + echo "| --- | --- | --- |" >> coverage.md + go tool cover -func=coverage.out | tail -n +2 | while read line; do \ + file=$$(echo $$line | awk '{print $$1}'); \ + func=$$(echo $$line | awk '{print $$2}'); \ + cov=$$(echo $$line | awk '{print $$3}'); \ + printf "| %s | %s | %s |\\n" "$$file" "$$func" "$$cov" >> coverage.md; \ + done + rm coverage.out \ No newline at end of file diff --git a/coverage.md b/coverage.md new file mode 100644 index 0000000000..d13078f292 --- /dev/null +++ b/coverage.md @@ -0,0 +1,938 @@ +| File | Function | Coverage | +| --- | --- | --- | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:30: | WithCustomExceptions | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:40: | New | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:61: | getCapWord | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:74: | ToSnake | 97.1% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:140: | ToPascal | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:150: | ToCamel | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:160: | ToTitle | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:172: | capitalize | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/caser/caser.go:204: | startsWithInitialism | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:18: | NewDuration | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:24: | JSONSchema | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:32: | UnmarshalJSON | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:45: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:49: | Duration | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/duration.go:53: | Equal | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:25: | ParseTime | 91.7% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:85: | JSONSchema | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:106: | UnmarshalJSON | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:121: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:125: | AsTime | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:140: | IsZero | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:144: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:148: | Hash | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:157: | SetHashNowFunc | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:172: | newTimeDuration | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:180: | parseTimeDuration | 79.5% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:254: | addUnit | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/time.go:290: | Duration | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/configtype/util.go:5: | patternCases | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:60: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:64: | FormatFromString | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:81: | DefaultTitleTransformer | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:89: | sortTables | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:101: | NewGenerator | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:115: | Generate | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/docs/generator.go:130: | GenerateJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/json.go:28: | renderTablesAsJSON | 90.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/json.go:42: | jsonifyTables | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/markdown.go:18: | renderTablesAsMarkdown | 73.7% | +| github.com/cloudquery/plugin-sdk/v4/docs/markdown.go:49: | renderAllTables | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/docs/markdown.go:61: | renderTable | 76.5% | +| github.com/cloudquery/plugin-sdk/v4/docs/markdown.go:89: | formatMarkdown | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/markdown.go:94: | indentToDepth | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/docs/table_options.go:15: | TableOptionsDescriptionTransformer | 92.9% | +| github.com/cloudquery/plugin-sdk/v4/faker/faker.go:21: | getFakedValue | 71.9% | +| github.com/cloudquery/plugin-sdk/v4/faker/faker.go:177: | FakeObject | 78.6% | +| github.com/cloudquery/plugin-sdk/v4/faker/options.go:7: | WithMaxDepth | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/faker/options.go:13: | WithLogger | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/glob/glob.go:8: | IncludeTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/glob/glob.go:25: | Glob | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/grpczerolog/grpc.go:12: | InterceptorLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/opts/syncoptions.go:9: | SchedulerOpts | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/token.go:15: | NewTokenSource | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/token.go:58: | newCloudTokenSource | 91.7% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/token.go:84: | Token | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/token.go:88: | retrieveToken | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/token.go:129: | initCloudOpts | 78.9% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenautheditor.go:12: | TokenAuthEditor | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenauthtransport.go:25: | RoundTrip | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenauthtransport.go:52: | NewAuthTransport | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenoptions.go:14: | WithAccessToken | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenoptions.go:25: | WithToken | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenoptions.go:32: | WithDefaultContext | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/remoteoauth/tokenoptions.go:38: | withNoWrap | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/retryablehttp/logger.go:12: | Debug | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/retryablehttp/logger.go:16: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/retryablehttp/logger.go:20: | Info | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/retryablehttp/logger.go:24: | Warn | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/retryablehttp/logger.go:28: | NewLeveledLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/helpers/slice.go:6: | InterfaceSlice | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:7: | reachedLimit | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:8: | remaining | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:15: | remainingPerN | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:22: | cap | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:28: | capPerN | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:39: | ReachedLimit | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:40: | Rows | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:41: | AddRows | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:43: | AddSlice | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:48: | Reset | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:53: | add | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:58: | set | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/cap.go:63: | CappedAt | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:16: | split | 91.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:42: | getAdd | 93.3% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:73: | getToFlush | 81.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:116: | slice | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:124: | newSlicedRecord | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/batch/slice.go:142: | SliceRecord | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:39: | NewClient | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:134: | SetKey | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:149: | Flush | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:192: | GetKey | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:198: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/clients/state/v3/state.go:205: | Table | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/deprecated/testing.go:10: | GenTestData | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:31: | WithErrOnWrite | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:37: | WithBlockingWrite | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:43: | GetNewClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:107: | NewMemDBClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:111: | NewMemDBClientErrOnNew | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:115: | overwrite | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:121: | overwriteRow | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:147: | ID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:151: | GetSpec | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:155: | Read | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:170: | Sync | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:187: | Tables | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:195: | migrate | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:213: | Write | 76.2% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:250: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:255: | deleteStale | 88.9% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:282: | deleteRecord | 82.4% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:311: | Transform | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:315: | TransformSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/memdb/memdb.go:319: | evaluatePredicate | 70.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/pk/pk.go:10: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/random/random.go:16: | randSeq | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/random/random.go:25: | GenerateRandomUnixSocketName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:25: | GetNewClient | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:35: | GetSpec | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:39: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:43: | Transform | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:61: | TransformSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/reversertransformer/reversertransformer.go:65: | reverseStrings | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:31: | GetProtocolVersion | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:37: | Configure | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:50: | GetName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:56: | GetVersion | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:62: | Migrate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:88: | Write | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:94: | Write2 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:197: | setCQIDAsPrimaryKeysForTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:207: | SetDestinationManagedCqColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:221: | GetMetrics | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:225: | DeleteStale | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:256: | setPKsForTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/destinations.go:262: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:15: | TablesV2ToV3 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:23: | TableV2ToV3 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:37: | ColumnsV2ToV3 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:45: | ColumnV2ToV3 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:58: | TypeV2ToV3 | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:99: | CQTypesOneToRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v0/schemav2tov3.go:103: | CQTypesToRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/convert.go:14: | NewFromBytes | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/convert.go:22: | NewSchemasFromBytes | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:32: | Configure | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:60: | GetName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:66: | GetVersion | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:72: | Migrate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:103: | Write | 44.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:186: | setCQIDAsPrimaryKeysForTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:195: | GetMetrics | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:199: | DeleteStale | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:232: | setPKsForTables | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/destination/v1/destinations.go:238: | Close | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/discovery/v0/discovery.go:14: | GetVersions | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/discovery/v1/discovery.go:14: | GetVersions | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:33: | GetTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:55: | GetName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:61: | GetVersion | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:67: | GetSpecSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:76: | TestConnection | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:109: | Init | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:116: | Read | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:153: | flushMetrics | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:164: | Sync | 44.6% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:293: | Write | 39.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:413: | Transform | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:503: | TransformSchema | 70.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/servers/plugin/v3/plugin.go:519: | Close | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:3: | BEUint32 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:8: | BEPutUint32 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:16: | BEAppendUint32 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:25: | BEUint64 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:31: | BEPutUint64 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/byteorder.go:43: | BEAppendUint64 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:37: | MarshalBinary | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:41: | AppendBinary | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:54: | UnmarshalBinary | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:73: | consumeUint64 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:77: | consumeUint32 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:81: | Reset | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:95: | New | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:101: | Size | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:103: | BlockSize | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:105: | Write | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:128: | Sum | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:135: | checkSum | 95.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:169: | ConstantTimeSum | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:175: | constSum | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1.go:237: | Sum | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1block.go:16: | blockGeneric | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/internal/sha1/sha1block_generic.go:3: | block | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:13: | IsSyncMessage | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:27: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:36: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:50: | InsertItems | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:60: | GetInserts | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:70: | Exists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:79: | Exists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:93: | GetRecords | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:102: | GetRecordsForTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:121: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/sync_message.go:131: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:13: | IsWriteMessage | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:22: | InsertItems | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:32: | GetInserts | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:48: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:52: | Exists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:58: | GetMessageByTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:72: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:82: | Exists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:89: | GetRecords | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:97: | GetRecordsForTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:120: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:126: | Exists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/message/write_message.go:167: | GetTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/diff.go:12: | RecordsDiff | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/diff.go:16: | TableDiff | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/nulls.go:9: | stripNullsFromLists | 93.8% | +| github.com/cloudquery/plugin-sdk/v4/plugin/nulls.go:37: | replaceNullsByEmpty | 91.7% | +| github.com/cloudquery/plugin-sdk/v4/plugin/nulls.go:62: | replaceNullsByEmptyNestedArray | 90.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/nulls.go:94: | handleNulls | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/nulls.go:103: | handleNullsArray | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:14: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:20: | WithBuildTargets | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:26: | WithJSONSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:32: | WithKind | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:43: | WithTeam | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/options.go:50: | WithConnectionTester | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:37: | Write | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:41: | Read | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:49: | Sync | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:53: | Tables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:59: | Transform | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:62: | TransformSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:108: | NewPlugin | 44.4% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:132: | InvocationID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:137: | Name | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:142: | Kind | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:147: | Team | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:152: | Version | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:156: | JSONSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:160: | Meta | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:169: | PackageAndVersion | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:174: | SetSkipUsageClient | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:179: | SetSkipTableValidation | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:189: | OnBeforeSend | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:206: | OnSyncFinish | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:213: | Targets | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:217: | SetLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:221: | Tables | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:233: | Init | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin.go:263: | Close | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_destination.go:20: | writeOne | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_destination.go:26: | WriteAll | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_destination.go:35: | Write | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_destination.go:43: | Read | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_package.go:25: | Validate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_package.go:49: | EnvVariables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_package.go:54: | tags | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_package.go:62: | cgoEnvVariables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_read.go:11: | readAll | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_read.go:27: | sliceToSingleRowRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_source.go:39: | MatchesTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_source.go:57: | NewSourcePlugin | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_source.go:74: | SyncAll | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_source.go:90: | Sync | 62.5% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:14: | NewTestConnError | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:21: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:25: | Unwrap | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:29: | Is | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:38: | TestConnection | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_testconn.go:42: | UnimplementedTestConnectionFn | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_transformer.go:14: | Transform | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/plugin_transformer.go:19: | TransformSchema | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/sort.go:15: | sortRecords | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing.go:10: | tableNameForTest | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_validation.go:10: | ValidateNoEmptyColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_validation.go:20: | ValidateSensitiveColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:90: | WithTestSourceAllowNull | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:96: | WithTestIgnoreNullsInLists | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:102: | WithTestDataOptions | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:108: | WithRandomSeed | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:114: | WithHomogeneousTypes | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write.go:120: | TestWriterSuiteRunner | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_delete.go:16: | testDeleteStaleBasic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_delete.go:83: | testDeleteStaleAll | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_delete.go:153: | testDeleteRecordBasic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_delete.go:248: | testDeleteAllRecords | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_insert.go:14: | TotalRows | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_insert.go:22: | testInsertBasic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_insert.go:83: | testInsertAll | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_migrate.go:18: | tableUUIDSuffix | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_migrate.go:23: | migrate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_migrate.go:115: | testMigrate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_migrate.go:352: | expectRows | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_upsert.go:14: | testUpsertBasic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_upsert.go:70: | testUpsertAll | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_upsert.go:136: | testInsertDuplicatePK | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/testing_write_upsert.go:205: | extractLastRowFromRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/validate.go:13: | validateTables | 60.0% | +| github.com/cloudquery/plugin-sdk/v4/plugin/validate.go:25: | validate | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/plugin/validate.go:38: | JSONSchemaValidator | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:14: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:30: | WithQuotaCheckPeriod | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:37: | WithQuotaMaxConsecutiveFailures | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:44: | WithCancelOnQuotaExceeded | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:63: | checkInitialQuota | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/monitor.go:79: | startQuotaMonitor | 88.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:68: | WithMeta | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:74: | WithLicenseFileOrDirectory | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:80: | WithAWSLicenseManagerClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:86: | NewLicenseClient | 55.6% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:107: | ValidateLicense | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:119: | validateCQLicense | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:169: | validateLicenseFile | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:191: | UnpackLicense | 73.3% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:219: | IsValid | 90.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/offline.go:237: | validateMarketplaceLicense | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/premium/tables.go:6: | ContainsPaidTables | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/tables.go:19: | MakeAllTablesPaid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:90: | WithBatchLimit | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:97: | WithMaxTimeBetweenFlushes | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:105: | WithMinTimeBetweenFlushes | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:112: | WithMaxRetries | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:121: | WithMaxWaitTime | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:128: | WithLogger | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:135: | WithURL | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:142: | withTeamName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:149: | WithAPIClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:156: | WithAWSMarketplaceClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:163: | withTokenClient | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:211: | NewUsageClient | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:295: | setupAWSMarketplace | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:326: | isAWSMarketplace | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:330: | awsMarketplaceProductCode | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:337: | Increase | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:367: | IncreaseForTable | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:399: | TeamName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:403: | CheckQuota | 52.9% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:433: | Close | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:441: | getTableUsage | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:458: | subtractTableUsageForAWSMarketplace | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:473: | subtractTableUsage | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:488: | backgroundUpdater | 90.2% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:567: | reportUsageToAWSMarketplace | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:605: | updateMarketplaceUsage | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:628: | updateUsageWithRetryAndBackoff | 93.8% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:663: | updateConfigurationFromHeaders | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:696: | getTeamNameByTokenType | 52.2% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:734: | determineInstallationID | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:742: | TeamName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:746: | CheckQuota | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:750: | Increase | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:754: | IncreaseForTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:758: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:762: | roundDown | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/premium/usage.go:766: | roundUp | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:14: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:18: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:29: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:36: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:40: | Set | 74.1% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:86: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/binary.go:94: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:14: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:18: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:22: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:33: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:40: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/bool.go:44: | Set | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:9: | underlyingNumberType | 21.6% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:68: | underlyingStringType | 44.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:87: | underlyingBoolType | 44.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:106: | underlyingBytesType | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:127: | underlyingTimeType | 60.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:149: | underlyingUUIDType | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/convert.go:171: | underlyingPtrType | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:16: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:20: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:24: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:35: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:42: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date32.go:46: | Set | 47.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:16: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:20: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:24: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:35: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:42: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/date64.go:46: | Set | 47.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:15: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:19: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:23: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:34: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:41: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:45: | Set | 56.1% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:184: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:188: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:192: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:203: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:210: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/decimal.go:214: | Set | 59.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/duration.go:15: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/duration.go:19: | String | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/duration.go:27: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/duration.go:38: | Set | 60.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/errors.go:20: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/errors.go:28: | MaskedError | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/errors.go:35: | Unwrap | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:16: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:20: | DataType | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:33: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:37: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:48: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:55: | Set | 79.3% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:204: | validateValue | 63.6% | +| github.com/cloudquery/plugin-sdk/v4/scalar/float.go:226: | getBitWidth | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:18: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:22: | DataType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:26: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:37: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:44: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:48: | Set | 71.2% | +| github.com/cloudquery/plugin-sdk/v4/scalar/inet.go:140: | maybeGetIPv4 | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:16: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:20: | DataType | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:35: | String | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:42: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:53: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:57: | Set | 61.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:221: | validateValue | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/int.go:248: | getBitWidth | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:17: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:21: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:32: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:41: | Set | 69.6% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:85: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:89: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:93: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:101: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:112: | Set | 54.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:165: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:178: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:182: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:186: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:194: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:205: | Set | 54.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/interval.go:258: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:17: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:21: | DataType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:25: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:29: | Equal | 69.2% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:52: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:59: | Set | 81.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:137: | isEmptyStringMap | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:152: | isEmptySlice | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/json.go:161: | jsonBytesEqual | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:17: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:21: | DataType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:25: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:41: | Equal | 61.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:63: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:67: | Set | 55.6% | +| github.com/cloudquery/plugin-sdk/v4/scalar/list.go:156: | isReflectValueNil | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:15: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:19: | DataType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:23: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:30: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:41: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/mac.go:45: | Set | 44.8% | +| github.com/cloudquery/plugin-sdk/v4/scalar/scalar.go:38: | ToArrowRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/scalar.go:45: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/scalar.go:57: | NewScalar | 86.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/scalar.go:147: | AppendToBuilder | 69.6% | +| github.com/cloudquery/plugin-sdk/v4/scalar/scalar.go:274: | AppendToRecordBuilder | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:17: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:21: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:25: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:32: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:43: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:47: | Set | 61.9% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:89: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:93: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:97: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:101: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:112: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/string.go:116: | Set | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:18: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:22: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:33: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:41: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:45: | Set | 58.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/struct.go:116: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/time.go:12: | DataType | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/time.go:23: | Equal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/time.go:34: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/time.go:49: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/time.go:63: | Set | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:27: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:31: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:35: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:46: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:53: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:57: | Set | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/timestamp.go:118: | DecodeText | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:16: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:20: | DataType | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:35: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:42: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:53: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:57: | Set | 54.9% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:225: | validateValue | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uint.go:243: | getBitWidth | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:17: | IsValid | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:21: | DataType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:25: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:32: | Equal | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:43: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:47: | Set | 79.4% | +| github.com/cloudquery/plugin-sdk/v4/scalar/uuid.go:104: | parseUUID | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:31: | WithoutBatching | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:37: | WithBatchOptions | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:48: | WithBatchMaxRows | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:54: | WithBatchTimeout | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:60: | getBatcher | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:83: | process | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:87: | close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:122: | send | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:130: | work | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:173: | process | 87.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batch.go:215: | close | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batchsender/batch_sender.go:28: | NewBatchSender | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batchsender/batch_sender.go:32: | Send | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batchsender/batch_sender.go:59: | appendToBatch | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batchsender/batch_sender.go:66: | flush | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/batchsender/batch_sender.go:80: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/duration.go:15: | Start | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/duration.go:28: | End | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:32: | NewMetrics | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:86: | NewSelector | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:97: | InitWithClients | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:107: | TotalErrors | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:118: | TotalErrorsAtomic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:122: | TotalPanics | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:133: | TotalPanicsAtomic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:137: | TotalResources | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:148: | TotalResourcesAtomic | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:152: | TableDuration | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:157: | AddResources | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:162: | GetResources | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:166: | AddErrors | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:171: | GetErrors | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:175: | AddPanics | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:180: | GetPanics | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:184: | StartTime | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:192: | EndTime | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/metrics/metrics.go:203: | GetDuration | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/active_work_signal.go:30: | newActiveWorkSignal | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/active_work_signal.go:41: | Add | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/active_work_signal.go:50: | Done | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/active_work_signal.go:56: | IsIdle | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/active_work_signal.go:61: | Wait | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/concurrent_random_queue.go:16: | NewConcurrentRandomQueue | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/concurrent_random_queue.go:20: | Push | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/concurrent_random_queue.go:27: | Pop | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:40: | WithWorkerCount | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:46: | WithCaser | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:52: | WithDeterministicCQID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:58: | WithInvocationID | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:64: | NewShuffleQueueScheduler | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/scheduler.go:81: | Sync | 92.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/worker.go:36: | work | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/worker.go:46: | newWorker | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/worker.go:71: | resolveTable | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/queue/worker.go:132: | resolveResource | 69.4% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/resolvers/resolvers.go:16: | resolveColumn | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/resolvers/resolvers.go:44: | ResolveSingleResource | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:42: | WithLogger | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:48: | WithConcurrency | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:54: | WithMaxDepth | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:60: | WithStrategy | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:66: | WithSingleNestedTableMaxConcurrency | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:72: | WithSingleResourceMaxConcurrency | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:80: | WithSyncDeterministicCQID | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:86: | WithInvocationID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:92: | WithShard | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:147: | NewScheduler | 92.9% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:185: | SyncAll | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:200: | Sync | 81.6% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:278: | logTablesMetrics | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:287: | maxDepth | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler.go:301: | shardTableClients | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_debug.go:18: | getTestMultiplier | 42.9% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_debug.go:30: | syncTest | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_dfs.go:22: | syncDfs | 93.3% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_dfs.go:79: | resolveTableDfs | 86.1% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_dfs.go:148: | resolveResourcesDfs | 72.7% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_round_robin.go:15: | syncRoundRobin | 92.6% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_round_robin.go:69: | roundRobinInterleave | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_shuffle.go:13: | syncShuffle | 87.1% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_shuffle.go:75: | hashTableNames | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_shuffle.go:81: | shuffle | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/scheduler_shuffle_queue.go:10: | syncShuffleQueue | 94.4% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:14: | String | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:22: | MarshalJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:35: | UnmarshalJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:48: | Validate | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:60: | JSONSchema | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:81: | StrategyForName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scheduler/strategy.go:92: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:35: | Len | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:39: | SchemaByName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:52: | hashRecord | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:71: | newUUID | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:75: | nullUUIDsForRecord | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:81: | StringArrayFromValue | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:90: | TimestampArrayFromTime | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:103: | ReplaceFieldInRecord | 83.3% | +| github.com/cloudquery/plugin-sdk/v4/schema/arrow.go:114: | AddInternalColumnsToRecord | 96.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:57: | NewColumnFromArrowField | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:82: | ToArrowField | 90.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:111: | MarshalJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:137: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:161: | Index | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:170: | Names | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:178: | Get | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/column.go:187: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:10: | underlyingNumberType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:65: | underlyingBoolType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:84: | underlyingBytesType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:105: | underlyingTimeType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:126: | underlyingStringType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:145: | underlyingUUIDType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:166: | underlyingSliceType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/convert.go:188: | underlyingPtrType | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/errors.go:27: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/errors.go:35: | MaskedError | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/errors.go:42: | Unwrap | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/meta.go:52: | parentCqUUIDResolver | 10.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resolvers.go:15: | PathResolver | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resolvers.go:22: | ParentColumnResolver | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:29: | NewResourceData | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:42: | Get | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:55: | Set | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:69: | SetItem | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:73: | GetItem | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:77: | GetValues | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:82: | CalculateCQID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:102: | calculateCqIDValue | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:113: | storeCQID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:126: | StoreCQClientID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:138: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:146: | Error | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:151: | Validate | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:171: | TableName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/resource.go:178: | ColumnNames | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:120: | AddCqIDs | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:140: | AddCqClientID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:151: | CqIDAsPK | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:169: | NewTablesFromArrowSchemas | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:184: | NewTableFromArrowSchema | 92.6% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:229: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:246: | String | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:263: | GetColumnChangeSummary | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:337: | GetChangesSummary | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:357: | FilterDfsFunc | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:369: | ToArrowSchemas | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:378: | FilterDfs | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:423: | flattenTablesRecursive | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:435: | FlattenTables | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:452: | UnflattenTables | 93.3% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:475: | TableNames | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:484: | GetTopLevel | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:494: | Get | 42.9% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:507: | ValidateDuplicateColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:516: | ValidateDuplicateTables | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:528: | GetPaidTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:539: | HasPaidTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:544: | filterDfs | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:568: | PrimaryKeysIndexes | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:579: | ToArrowSchema | 93.8% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:610: | GetChanges | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:664: | ValidateDuplicateColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:680: | Column | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:692: | OverwriteOrAddColumn | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:702: | PrimaryKeys | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:713: | IncrementalKeys | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:724: | PrimaryKeyComponents | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:735: | TableNames | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:743: | Copy | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/table.go:755: | ValidColumnName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:35: | listOfColumns | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:45: | mapOfColumns | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:56: | columnsToFields | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:67: | TestTable | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:175: | excludeType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:209: | NewTestDataGenerator | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:217: | Reset | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:223: | Generate | 92.9% | +| github.com/cloudquery/plugin-sdk/v4/schema/testdata.go:268: | getExampleJSON | 92.7% | +| github.com/cloudquery/plugin-sdk/v4/schema/validators.go:12: | FindEmptyColumns | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/validators.go:45: | FindNotMatchingSensitiveColumns | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/schema/validators.go:74: | isEmptyJSON | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/scripts/benchmark-delta/main.go:32: | prettyName | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/scripts/benchmark-delta/main.go:36: | main | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/docs.go:27: | newCmdPluginDoc | 76.9% | +| github.com/cloudquery/plugin-sdk/v4/serve/enum.go:16: | newEnum | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/enum.go:23: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/enum.go:27: | Set | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/serve/enum.go:43: | Type | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/env.go:5: | getEnvOrDefault | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/serve/info.go:12: | newCmdPluginInfo | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:28: | newResource | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:54: | getTraceExporter | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:76: | getMetricReader | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:98: | getLogsProcessor | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:121: | setupOtel | 6.9% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:189: | Run | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:245: | otellogSeverity | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/opentelemetry.go:266: | newOTELLoggerHook | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:55: | writeTablesJSON | 87.1% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:121: | build | 74.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:197: | calcChecksum | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:211: | getModuleName | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:225: | writePackageJSON | 90.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:249: | writeSpecJSONSchema | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:257: | copyDocs | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:282: | versionRegex | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:286: | validatePluginExports | 76.3% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:346: | copyFile | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:364: | containsRegex | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:374: | newCmdPluginPackage | 73.6% | +| github.com/cloudquery/plugin-sdk/v4/serve/package.go:462: | normalizeMessage | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:49: | WithDestinationV0V1Server | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:56: | WithArgs | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:64: | WithTestListener | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:73: | Plugin | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:84: | bufPluginDialer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:88: | Serve | 77.8% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:104: | newCmdPluginServe | 78.1% | +| github.com/cloudquery/plugin-sdk/v4/serve/plugin.go:244: | newCmdPluginRoot | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:30: | NewClient | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:34: | NewClientWithOptions | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:50: | NewConnectedClient | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:57: | NewConnectedClientWithOptions | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:90: | SetKey | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:94: | GetKey | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:98: | Flush | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/state/client.go:102: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/ignore_in_tests.go:7: | DefaultIgnoreInTestsTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/name.go:15: | DefaultNameTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/name.go:29: | DefaultJSONColumnSchemaNameTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/nullable_field.go:7: | DefaultNullableFieldTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:6: | WithUnwrapAllEmbeddedStructs | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:13: | WithUnwrapStructFields | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:20: | WithSkipFields | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:28: | WithNameTransformer | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:36: | WithJSONSchemaNameTransformer | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:44: | WithTypeTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:52: | WithResolverTransformer | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:60: | WithIgnoreInTestsTransformer | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:68: | WithNullableFieldTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:75: | WithPrimaryKeys | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:82: | WithPrimaryKeyComponents | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/options.go:89: | WithMaxJSONTypeSchemaDepth | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/resolver.go:11: | DefaultResolverTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:38: | isFieldStruct | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:49: | isTypeIgnored | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:60: | getUnwrappedFields | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:78: | unwrapField | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:93: | shouldUnwrapField | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:108: | ignoreField | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:120: | addColumnFromField | 81.1% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:198: | TransformWithStruct | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:251: | getColumnType | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:266: | structSchemaToJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:274: | normalizePointer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/struct.go:281: | fieldToJSONSchema | 86.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/tables.go:10: | SetParents | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/tables.go:19: | TransformTables | 44.4% | +| github.com/cloudquery/plugin-sdk/v4/transformers/tables.go:38: | Apply | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/transformers/type.go:15: | defaultGoTypeToSchemaType | 91.7% | +| github.com/cloudquery/plugin-sdk/v4/transformers/type.go:67: | DefaultTypeTransformer | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:20: | NewInetBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:24: | Append | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:32: | UnsafeAppend | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:36: | AppendValues | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:51: | AppendValueFromString | 88.9% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:65: | UnmarshalOne | 63.2% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:102: | Unmarshal | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:111: | UnmarshalJSON | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:125: | NewInetArray | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:134: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:153: | Value | 80.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:173: | ValueStr | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:182: | GetOneForMarshal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:189: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:210: | NewInetType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:215: | ArrayType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:219: | ExtensionName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:223: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:228: | Serialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:234: | Deserialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:245: | ExtensionEquals | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/inet.go:249: | NewBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:20: | NewJSONBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:24: | AppendBytes | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:33: | Append | 57.1% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:48: | UnsafeAppend | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:58: | AppendValueFromString | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:66: | AppendValues | 72.7% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:86: | UnmarshalOne | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:100: | Unmarshal | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:109: | UnmarshalJSON | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:123: | NewJSONArray | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:132: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:151: | Value | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:164: | ValueStr | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:173: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:185: | GetOneForMarshal | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:200: | NewJSONType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:205: | ArrayType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:209: | ExtensionName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:213: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:217: | MarshalJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:222: | Serialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:228: | Deserialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:239: | ExtensionEquals | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/json.go:243: | NewBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:20: | NewMACBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:24: | Append | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:28: | UnsafeAppend | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:32: | AppendValues | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:47: | AppendValueFromString | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:60: | UnmarshalOne | 73.3% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:92: | Unmarshal | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:101: | UnmarshalJSON | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:115: | NewMACArray | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:124: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:143: | Value | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:156: | ValueStr | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:165: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:178: | GetOneForMarshal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:194: | NewMACType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:199: | ArrayType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:203: | ExtensionName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:207: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:212: | Serialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:218: | Deserialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:229: | ExtensionEquals | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/mac.go:233: | NewBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/register.go:5: | RegisterAllExtensions | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/register.go:18: | UnregisterAllExtensions | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:23: | NewUUIDBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:27: | Append | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:31: | UnsafeAppend | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:35: | AppendValueFromString | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:50: | AppendValues | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:65: | UnmarshalOne | 62.5% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:99: | Unmarshal | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:108: | UnmarshalJSON | 71.4% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:122: | NewUUIDArray | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:131: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:150: | Value | 66.7% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:157: | ValueStr | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:166: | MarshalJSON | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:177: | GetOneForMarshal | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:192: | NewUUIDType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:197: | ArrayType | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:201: | ExtensionName | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:205: | String | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:209: | MarshalJSON | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:214: | Serialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:220: | Deserialize | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:231: | ExtensionEquals | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/types/uuid.go:235: | NewBuilder | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:47: | WithLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:53: | WithBatchTimeout | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:59: | WithBatchSize | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:65: | WithBatchSizeBytes | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:82: | New | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:99: | Flush | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:116: | Close | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:127: | worker | 72.5% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:198: | flushTable | 85.7% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:210: | flushMigrateTables | 87.5% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:223: | flushDeleteStaleTables | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:236: | flushDeleteRecordTables | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:249: | flushInsert | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:263: | writeAll | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:272: | Write | 31.8% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:341: | isLimitReached | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/batchwriter.go:347: | startWorker | 91.3% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/unimplemented.go:13: | MigrateTables | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/unimplemented.go:19: | DeleteStale | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/batchwriter/unimplemented.go:25: | DeleteRecord | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:35: | WithLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:41: | WithBatchSize | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:47: | WithBatchSizeBytes | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:53: | WithBatchTimeout | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:59: | withTickerFn | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:71: | New | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:87: | Write | 82.1% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:175: | append | 60.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:185: | flush | 75.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:207: | append | 50.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/mixedbatchwriter.go:236: | flush | 78.6% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/unimplemented.go:13: | MigrateTableBatch | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/unimplemented.go:19: | DeleteStaleBatch | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/mixedbatchwriter/unimplemented.go:25: | DeleteRecordsBatch | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/msgtype.go:19: | MsgID | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:79: | WithLogger | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:85: | WithBatchTimeout | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:91: | WithBatchSizeRows | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:97: | WithBatchSizeBytes | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:103: | withTickerFn | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:115: | New | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:131: | Flush | 68.4% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:157: | Close | 88.2% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:182: | Write | 94.7% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:215: | startWorker | 56.9% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:378: | closeFlush | 100.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:388: | send | 81.8% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/streamingbatchwriter.go:455: | run | 81.6% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/unimplemented.go:14: | MigrateTable | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/unimplemented.go:24: | DeleteStale | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/streamingbatchwriter/unimplemented.go:33: | DeleteRecords | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/ticker.go:15: | NewTicker | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/ticker.go:26: | Chan | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/ticker.go:32: | Stop | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/ticker.go:34: | Reset | 0.0% | +| github.com/cloudquery/plugin-sdk/v4/writers/ticker.go:36: | Chan | 0.0% | +| total: | (statements) | 55.2% |