Updates to dotnet example automation for recent changes on dotnet side (#9359)

* fix in new cases and update tests in new cases

* remove useless pieces

* update code

* fix test cases

* fix typo
This commit is contained in:
Dapeng Zhang 2024-11-11 13:26:28 +08:00 коммит произвёл GitHub
Родитель 9c36aa6e32
Коммит 607a9d8241
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
2 изменённых файлов: 34 добавлений и 15 удалений

Просмотреть файл

@ -98,7 +98,10 @@ def get_dotnet_using_statements(lines: List[str]) -> List[str]:
"using Azure.ResourceManager;\n",
]
for line in lines:
if line.startswith("using "):
if line.startswith("using NUnit."):
# ignore the NUnit namespaces if any
pass
elif line.startswith("using "):
lines_using_statements.append(line)
elif line.startswith("namespace "):
# remove the prefix first

Просмотреть файл

@ -1,8 +1,13 @@
import unittest
import parameterized
from main import break_down_aggregated_dotnet_example, format_dotnet, get_dotnet_using_statements
from typing import List
file_content = """// Copyright (c) Microsoft Corporation. All rights reserved.
class TestMain(unittest.TestCase):
@parameterized.parameterized.expand(
[
(
"""// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// <auto-generated/>
@ -20,14 +25,15 @@ using Azure.ResourceManager.ContainerInstance;
using Azure.ResourceManager.ContainerInstance.Models;
using Azure.ResourceManager.Models;
using Azure.ResourceManager.Resources;
using NUnit.Framework;
namespace Azure.ResourceManager.ContainerInstance.Samples
{
public partial class Sample_ContainerGroupCollection
{
// ContainerGroupsListByResourceGroup
[NUnit.Framework.Test]
[NUnit.Framework.Ignore("Only verifying that the sample builds")]
[Test]
[Ignore("Only verifying that the sample builds")]
public async Task GetAll_ContainerGroupsListByResourceGroup()
{
// Generated from example definition: specification/containerinstance/resource-manager/Microsoft.ContainerInstance/stable/2021-10-01/examples/ContainerGroupsListByResourceGroup.json
@ -324,10 +330,10 @@ new ContainerGroupSubnetId(new ResourceIdentifier("[resourceId('Microsoft.Networ
}
}
"""
class TestMain(unittest.TestCase):
def test_break_down_aggregated_dotnet_example(self):
)
]
)
def test_break_down_aggregated_dotnet_example(self, file_content: str):
lines = file_content.splitlines(keepends=True)
examples = break_down_aggregated_dotnet_example(lines)
self.assertIsNotNone(examples.class_opening)
@ -356,18 +362,28 @@ using Azure.Identity;
using Azure.ResourceManager.Compute.Models;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.Resources.Models;
using NUnit.Framework;
namespace Azure.ResourceManager.Compute.Samples
{
}"""
}""",
[
"using System;\n",
"using System.Threading.Tasks;\n",
"using Azure;\n",
"using Azure.Core;\n",
"using Azure.Identity;\n",
"using Azure.ResourceManager;\n",
"using Azure.ResourceManager.Compute;\n",
"using Azure.ResourceManager.Compute.Models;\n",
"using Azure.ResourceManager.Resources;\n",
"using Azure.ResourceManager.Resources.Models;\n",
]
)
]
)
def test_example_usings(self, content: str):
def test_example_usings(self, content: str, expected_usings: List[str]):
lines = content.splitlines(keepends=True)
usings = get_dotnet_using_statements(lines)
self.assertIn("using Azure;\n", usings)
self.assertIn("using Azure.Core;\n", usings)
self.assertIn("using Azure.ResourceManager;\n", usings)
self.assertIn("using Azure.ResourceManager.Compute;\n", usings)
self.assertSetEqual(set(expected_usings), set(usings))