diff --git a/sdk/billingbenefits/arm-billingbenefits/README.md b/sdk/billingbenefits/arm-billingbenefits/README.md index f4050dea2b9f..e32e4e5c7053 100644 --- a/sdk/billingbenefits/arm-billingbenefits/README.md +++ b/sdk/billingbenefits/arm-billingbenefits/README.md @@ -48,20 +48,26 @@ Set the values of the client ID, tenant ID, and client secret of the AAD applica For more information about how to create an Azure AD Application check out [this guide](https://learn.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). -```javascript -const { BillingBenefitsRP } = require("@azure/arm-billingbenefits"); -const { DefaultAzureCredential } = require("@azure/identity"); -// For client-side applications running in the browser, use InteractiveBrowserCredential instead of DefaultAzureCredential. See https://aka.ms/azsdk/js/identity/examples for more details. - -const subscriptionId = "00000000-0000-0000-0000-000000000000"; -const client = new BillingBenefitsRP(new DefaultAzureCredential(), subscriptionId); - -// For client-side applications running in the browser, use this code instead: -// const credential = new InteractiveBrowserCredential({ -// tenantId: "", -// clientId: "" -// }); -// const client = new BillingBenefitsRP(credential, subscriptionId); +Using Node.js and Node-like environments, you can use the `DefaultAzureCredential` class to authenticate the client. + +```ts snippet:ReadmeSampleCreateClient_Node +import { BillingBenefitsRP } from "@azure/arm-billingbenefits"; +import { DefaultAzureCredential } from "@azure/identity"; + +const client = new BillingBenefitsRP(new DefaultAzureCredential()); +``` + +For browser environments, use the `InteractiveBrowserCredential` from the `@azure/identity` package to authenticate. + +```ts snippet:ReadmeSampleCreateClient_Browser +import { InteractiveBrowserCredential } from "@azure/identity"; +import { BillingBenefitsRP } from "@azure/arm-billingbenefits"; + +const credential = new InteractiveBrowserCredential({ + tenantId: "", + clientId: "", +}); +const client = new BillingBenefitsRP(credential); ``` ### JavaScript Bundle @@ -80,8 +86,9 @@ To use this client library in the browser, first you need to use a bundler. For Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`: -```javascript -const { setLogLevel } = require("@azure/logger"); +```ts snippet:SetLogLevel +import { setLogLevel } from "@azure/logger"; + setLogLevel("info"); ``` diff --git a/sdk/billingbenefits/arm-billingbenefits/package.json b/sdk/billingbenefits/arm-billingbenefits/package.json index 5caf3618bc7f..3541620d94d1 100644 --- a/sdk/billingbenefits/arm-billingbenefits/package.json +++ b/sdk/billingbenefits/arm-billingbenefits/package.json @@ -8,20 +8,21 @@ "node": ">=18.0.0" }, "dependencies": { - "@azure/abort-controller": "^1.0.0", - "@azure/core-auth": "^1.3.0", - "@azure/core-client": "^1.6.1", - "@azure/core-lro": "^2.2.0", - "@azure/core-paging": "^1.2.0", - "@azure/core-rest-pipeline": "^1.8.0", - "tslib": "^2.2.0" + "@azure/abort-controller": "^2.1.2", + "@azure/core-auth": "^1.9.0", + "@azure/core-client": "^1.9.2", + "@azure/core-lro": "^2.7.2", + "@azure/core-paging": "^1.6.2", + "@azure/core-rest-pipeline": "^1.18.2", + "tslib": "^2.8.1" }, "keywords": [ "node", "azure", "typescript", "browser", - "isomorphic" + "isomorphic", + "cloud" ], "license": "MIT", "main": "./dist/commonjs/index.js", @@ -32,7 +33,8 @@ "@azure-tools/test-recorder": "^4.1.0", "@azure-tools/test-utils-vitest": "^1.0.0", "@azure/dev-tool": "^1.0.0", - "@azure/identity": "^4.0.1", + "@azure/identity": "^4.5.0", + "@azure/logger": "^1.1.4", "@types/node": "^18.0.0", "@vitest/browser": "^2.1.8", "@vitest/coverage-istanbul": "^2.1.8", @@ -41,10 +43,7 @@ "vitest": "^2.1.8" }, "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/billingbenefits/arm-billingbenefits", - "repository": { - "type": "git", - "url": "https://github.com/Azure/azure-sdk-for-js.git" - }, + "repository": "github:Azure/azure-sdk-for-js", "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, @@ -79,7 +78,7 @@ "unit-test": "npm run unit-test:node && npm run unit-test:browser", "unit-test:browser": "echo skipped", "unit-test:node": "dev-tool run test:vitest", - "update-snippets": "echo skipped" + "update-snippets": "dev-tool run update-snippets" }, "sideEffects": false, "//metadata": { diff --git a/sdk/billingbenefits/arm-billingbenefits/test/sampleTest.spec.ts b/sdk/billingbenefits/arm-billingbenefits/test/sampleTest.spec.ts index e25d3db273e7..86a13f7a74a4 100644 --- a/sdk/billingbenefits/arm-billingbenefits/test/sampleTest.spec.ts +++ b/sdk/billingbenefits/arm-billingbenefits/test/sampleTest.spec.ts @@ -6,17 +6,15 @@ * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ -import { - Recorder, - RecorderStartOptions -} from "@azure-tools/test-recorder"; -import { afterEach, beforeEach, describe, it } from "vitest"; +import type { RecorderStartOptions } from "@azure-tools/test-recorder"; +import { Recorder } from "@azure-tools/test-recorder"; +import { afterEach, beforeEach, describe, it, assert } from "vitest"; const replaceableVariables: Record = { AZURE_CLIENT_ID: "azure_client_id", AZURE_CLIENT_SECRET: "azure_client_secret", AZURE_TENANT_ID: "88888888-8888-8888-8888-888888888888", - SUBSCRIPTION_ID: "azure_subscription_id" + SUBSCRIPTION_ID: "azure_subscription_id", }; const recorderOptions: RecorderStartOptions = { @@ -30,16 +28,16 @@ const recorderOptions: RecorderStartOptions = { describe("My test", () => { let recorder: Recorder; - beforeEach(async function (ctx) { + beforeEach(async (ctx) => { recorder = new Recorder(ctx); await recorder.start(recorderOptions); }); - afterEach(async function () { + afterEach(async () => { await recorder.stop(); }); - it("sample test", async function () { - console.log("Hi, I'm a test!"); + it("sample test", async () => { + assert(true); }); }); diff --git a/sdk/billingbenefits/arm-billingbenefits/test/snippets.spec.ts b/sdk/billingbenefits/arm-billingbenefits/test/snippets.spec.ts new file mode 100644 index 000000000000..c7b1d621be95 --- /dev/null +++ b/sdk/billingbenefits/arm-billingbenefits/test/snippets.spec.ts @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { BillingBenefitsRP } from "../src/index.js"; +import { DefaultAzureCredential, InteractiveBrowserCredential } from "@azure/identity"; +import { setLogLevel } from "@azure/logger"; +import { describe, it } from "vitest"; + +describe("snippets", () => { + it("ReadmeSampleCreateClient_Node", async () => { + const client = new BillingBenefitsRP(new DefaultAzureCredential()); + }); + + it("ReadmeSampleCreateClient_Browser", async () => { + const credential = new InteractiveBrowserCredential({ + tenantId: "", + clientId: "", + }); + const client = new BillingBenefitsRP(credential); + }); + + it("SetLogLevel", async () => { + setLogLevel("info"); + }); +});