From a63698317005dd37f90ac1c2ded0df40b4e83518 Mon Sep 17 00:00:00 2001 From: deyaaeldeen Date: Fri, 24 Sep 2021 22:20:18 +0000 Subject: [PATCH 1/5] [Schema Registry] Enable min/max testing --- .../test/{ => public}/schemaRegistry.spec.ts | 10 +++++----- .../test/{ => public}/utils/recordedClient.ts | 16 +++++----------- 2 files changed, 10 insertions(+), 16 deletions(-) rename sdk/schemaregistry/schema-registry/test/{ => public}/schemaRegistry.spec.ts (95%) rename sdk/schemaregistry/schema-registry/test/{ => public}/utils/recordedClient.ts (80%) diff --git a/sdk/schemaregistry/schema-registry/test/schemaRegistry.spec.ts b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts similarity index 95% rename from sdk/schemaregistry/schema-registry/test/schemaRegistry.spec.ts rename to sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts index 8534cb12f220..11578104e0ea 100644 --- a/sdk/schemaregistry/schema-registry/test/schemaRegistry.spec.ts +++ b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts @@ -1,15 +1,15 @@ // Copyright (c) Microsoft Corporation. // Licensed under the MIT license. -import { createRecordedClient, testEnv } from "./utils/recordedClient"; +import { createRecordedClient } from "./utils/recordedClient"; import { Context } from "mocha"; -import { Recorder } from "@azure-tools/test-recorder"; +import { Recorder, env } from "@azure-tools/test-recorder"; import { assert, use as chaiUse } from "chai"; import chaiPromises from "chai-as-promised"; chaiUse(chaiPromises); import { ClientSecretCredential } from "@azure/identity"; -import { SchemaRegistryClient, SchemaDescription, SchemaProperties } from "../src/index"; +import { SchemaRegistryClient, SchemaDescription, SchemaProperties } from "../../src/index"; import { FullOperationResponse, OperationOptions } from "@azure/core-client"; const options: OperationOptions = { @@ -46,7 +46,7 @@ describe("SchemaRegistryClient", function() { ({ client, recorder } = createRecordedClient(this)); schema = { name: "azsdk_js_test", - groupName: testEnv.SCHEMA_REGISTRY_GROUP, + groupName: env.SCHEMA_REGISTRY_GROUP, format: "avro", definition: JSON.stringify({ type: "record", @@ -136,7 +136,7 @@ describe("SchemaRegistryClient", function() { it("schema with whitespace", async () => { const schema2: SchemaDescription = { name: "azsdk_js_test2", - groupName: testEnv.SCHEMA_REGISTRY_GROUP, + groupName: env.SCHEMA_REGISTRY_GROUP, format: "avro", definition: "{\n" + diff --git a/sdk/schemaregistry/schema-registry/test/utils/recordedClient.ts b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts similarity index 80% rename from sdk/schemaregistry/schema-registry/test/utils/recordedClient.ts rename to sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts index ba364d040533..98d23ae66490 100644 --- a/sdk/schemaregistry/schema-registry/test/utils/recordedClient.ts +++ b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts @@ -6,7 +6,7 @@ import { Context } from "mocha"; import { env, Recorder, record, RecorderEnvironmentSetup } from "@azure-tools/test-recorder"; import { ClientSecretCredential } from "@azure/identity"; -import { SchemaRegistryClient } from "../../src/index"; +import { SchemaRegistryClient } from "../../../src/index"; export interface RecordedClient { client: SchemaRegistryClient; @@ -21,12 +21,6 @@ const replaceableVariables: { [k: string]: string } = { SCHEMA_REGISTRY_GROUP: "group-1" }; -export const testEnv = new Proxy(replaceableVariables, { - get: (target, key: string) => { - return env[key] || target[key]; - } -}); - const environmentSetup: RecorderEnvironmentSetup = { replaceableVariables, customizationsOnRecordings: [ @@ -47,10 +41,10 @@ const environmentSetup: RecorderEnvironmentSetup = { export function createRecordedClient(context: Context): RecordedClient { const recorder = record(context, environmentSetup); const credential = new ClientSecretCredential( - testEnv.AZURE_TENANT_ID, - testEnv.AZURE_CLIENT_ID, - testEnv.AZURE_CLIENT_SECRET + env.AZURE_TENANT_ID, + env.AZURE_CLIENT_ID, + env.AZURE_CLIENT_SECRET ); - const client = new SchemaRegistryClient(testEnv.SCHEMA_REGISTRY_ENDPOINT, credential); + const client = new SchemaRegistryClient(env.SCHEMA_REGISTRY_ENDPOINT, credential); return { client, recorder }; } From b911e0da67e87fc512f77c621a70cbbe0caf913e Mon Sep 17 00:00:00 2001 From: deyaaeldeen Date: Fri, 24 Sep 2021 22:27:18 +0000 Subject: [PATCH 2/5] address feedback --- sdk/schemaregistry/schema-registry/tests.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/sdk/schemaregistry/schema-registry/tests.yml b/sdk/schemaregistry/schema-registry/tests.yml index f85e0d9accb4..050d34252117 100644 --- a/sdk/schemaregistry/schema-registry/tests.yml +++ b/sdk/schemaregistry/schema-registry/tests.yml @@ -5,8 +5,6 @@ stages: parameters: PackageName: "@azure/schema-registry" ServiceDirectory: schemaregistry - MatrixFilters: - - DependencyVersion=^$ EnvVars: AZURE_CLIENT_ID: $(aad-azure-sdk-test-client-id) AZURE_CLIENT_SECRET: $(aad-azure-sdk-test-client-secret) From 96aec6572c019e05071d8696db413692b3092960 Mon Sep 17 00:00:00 2001 From: deyaaeldeen Date: Fri, 24 Sep 2021 23:45:59 +0000 Subject: [PATCH 3/5] add integration tests scripts --- sdk/schemaregistry/schema-registry/package.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/schemaregistry/schema-registry/package.json b/sdk/schemaregistry/schema-registry/package.json index 51d56c6e8420..30886d91c153 100644 --- a/sdk/schemaregistry/schema-registry/package.json +++ b/sdk/schemaregistry/schema-registry/package.json @@ -17,15 +17,15 @@ "execute:samples": "dev-tool samples run samples-dev", "extract-api": "tsc -p . && api-extractor run --local", "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.ts\" \"test/**/*.ts\" \"samples-dev/**/*.ts\" \"*.{js,json}\"", - "integration-test:browser": "echo skipped", - "integration-test:node": "echo skipped", + "integration-test:browser": "karma start --single-run", + "integration-test:node": "nyc mocha -r esm --require source-map-support/register --reporter ../../../common/tools/mocha-multi-reporter.js --timeout 5000000 --full-trace \"dist-esm/test/{,!(browser)/**/}*.spec.js\"", "integration-test": "npm run integration-test:node && npm run integration-test:browser", "lint:fix": "eslint package.json api-extractor.json src test --ext .ts --fix --fix-type [problem,suggestion]", "lint": "eslint package.json api-extractor.json src test --ext .ts", "pack": "npm pack 2>&1", "test:browser": "npm run build:test && npm run integration-test:browser", "test:node": "npm run build:test && npm run integration-test:node", - "test": "npm run build:test && npm run unit-test && npm run integration-test", + "test": "npm run build:test && npm run unit-test", "unit-test:browser": "karma start --single-run", "unit-test:node": "mocha -r esm -r ts-node/register --timeout 50000 --reporter ../../../common/tools/mocha-multi-reporter.js --colors --exclude \"test/**/*.browser.ts\" \"test/**/*.ts\"", "unit-test": "npm run unit-test:node && npm run unit-test:browser", From 216e96510329bdd1f2d46b0c0e71de56c4e7b870 Mon Sep 17 00:00:00 2001 From: deyaaeldeen Date: Mon, 27 Sep 2021 21:34:05 +0000 Subject: [PATCH 4/5] remove index --- .../schema-registry/test/public/schemaRegistry.spec.ts | 2 +- .../schema-registry/test/public/utils/recordedClient.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts index 11578104e0ea..8020bf1cbb5b 100644 --- a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts +++ b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts @@ -9,7 +9,7 @@ import chaiPromises from "chai-as-promised"; chaiUse(chaiPromises); import { ClientSecretCredential } from "@azure/identity"; -import { SchemaRegistryClient, SchemaDescription, SchemaProperties } from "../../src/index"; +import { SchemaRegistryClient, SchemaDescription, SchemaProperties } from "../../src"; import { FullOperationResponse, OperationOptions } from "@azure/core-client"; const options: OperationOptions = { diff --git a/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts index 98d23ae66490..73f51ff34f3f 100644 --- a/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts +++ b/sdk/schemaregistry/schema-registry/test/public/utils/recordedClient.ts @@ -6,7 +6,7 @@ import { Context } from "mocha"; import { env, Recorder, record, RecorderEnvironmentSetup } from "@azure-tools/test-recorder"; import { ClientSecretCredential } from "@azure/identity"; -import { SchemaRegistryClient } from "../../../src/index"; +import { SchemaRegistryClient } from "../../../src"; export interface RecordedClient { client: SchemaRegistryClient; From 01831405c85f1f35259ec19823ecdba2aaeefb08 Mon Sep 17 00:00:00 2001 From: deyaaeldeen Date: Mon, 27 Sep 2021 23:36:00 +0000 Subject: [PATCH 5/5] remove the import of OperationOptions --- .../schema-registry/test/public/schemaRegistry.spec.ts | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts index 8020bf1cbb5b..b0cca118d3a1 100644 --- a/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts +++ b/sdk/schemaregistry/schema-registry/test/public/schemaRegistry.spec.ts @@ -10,10 +10,9 @@ chaiUse(chaiPromises); import { ClientSecretCredential } from "@azure/identity"; import { SchemaRegistryClient, SchemaDescription, SchemaProperties } from "../../src"; -import { FullOperationResponse, OperationOptions } from "@azure/core-client"; -const options: OperationOptions = { - onResponse: (rawResponse: FullOperationResponse) => { +const options = { + onResponse: (rawResponse: { status: number }) => { assert.equal(rawResponse.status, 200); } };