Skip to content

Commit 87ddb6b

Browse files
authored
build: run tests on multiple operating systems (#699)
* build: run tests on multiple operating systems * test: use environment-specific newline
1 parent 6deb6d4 commit 87ddb6b

File tree

2 files changed

+16
-13
lines changed

2 files changed

+16
-13
lines changed

.github/workflows/build-and-test.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,10 @@ on:
99

1010
jobs:
1111
unit-tests:
12-
runs-on: ubuntu-latest
12+
strategy:
13+
matrix:
14+
os: [ubuntu-latest, macos-latest, windows-latest]
15+
runs-on: ${{ matrix.os }}
1316
steps:
1417
- uses: actions/checkout@v6
1518
- name: Setup .NET

Google.Cloud.EntityFrameworkCore.Spanner.Tests/MigrationTests/MigrationMockServerTests.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ public void TestMigrateUsesDdlBatch()
4848
var formattedVersion = $"{version.Major}.{version.Minor}.{version.Build}";
4949
_fixture.SpannerMock.AddOrUpdateStatementResult("SELECT 1", StatementResult.CreateException(MockSpannerService.CreateDatabaseNotFoundException("d1")));
5050
_fixture.SpannerMock.AddOrUpdateStatementResult(
51-
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`)\nVALUES ('''20210309110233_Initial''', '''{formattedVersion}''')",
51+
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`){Environment.NewLine}VALUES ('''20210309110233_Initial''', '''{formattedVersion}''')",
5252
StatementResult.CreateUpdateCount(1)
5353
);
5454
_fixture.SpannerMock.AddOrUpdateStatementResult(
55-
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`)\nVALUES ('''20210830_V2''', '''{formattedVersion}''')",
55+
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`){Environment.NewLine}VALUES ('''20210830_V2''', '''{formattedVersion}''')",
5656
StatementResult.CreateUpdateCount(1)
5757
);
5858
using var db = new MockMigrationSampleDbContext(ConnectionString);
@@ -83,7 +83,7 @@ public void TestMigrateUsesDdlBatch()
8383
sql => Assert.StartsWith("CREATE TABLE `Concerts`", sql),
8484
sql => Assert.StartsWith("CREATE TABLE `Tracks`", sql),
8585
sql => Assert.StartsWith("CREATE TABLE `Performances`", sql),
86-
sql => Assert.StartsWith("CREATE TABLE `TicketSales` (\n `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (BIT_REVERSED_POSITIVE),\n", sql),
86+
sql => Assert.StartsWith($"CREATE TABLE `TicketSales` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (BIT_REVERSED_POSITIVE),{Environment.NewLine}", sql),
8787
sql => Assert.StartsWith("CREATE INDEX `AlbumsByAlbumTitle2`", sql),
8888
sql => Assert.StartsWith("CREATE INDEX `Idx_Singers_FullName`", sql),
8989
sql => Assert.StartsWith("CREATE NULL_FILTERED INDEX `IDX_TableWithAllColumnTypes_ColDate_ColCommitTS`", sql),
@@ -97,10 +97,10 @@ public void TestMigrateUsesDdlBatch()
9797
Assert.Collection(update.Statements,
9898
sql => Assert.StartsWith(" DROP INDEX `IDX_TableWithAllColumnTypes_ColDate_ColCommitTS`", sql),
9999
sql => Assert.StartsWith("DROP TABLE `TableWithAllColumnTypes`", sql),
100-
sql => Assert.StartsWith("CREATE TABLE `OtherSequenceKind` (\n `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (NON_EXISTING_KIND),\n", sql),
101-
sql => Assert.StartsWith("CREATE TABLE `NoSequenceKind` (\n `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY,\n", sql),
102-
sql => Assert.StartsWith("CREATE TABLE `GenerationStrategyAlways` (\n `Id` INT64 NOT NULL GENERATED ALWAYS AS IDENTITY (BIT_REVERSED_POSITIVE),\n", sql),
103-
sql => Assert.StartsWith("CREATE TABLE `AutoIncrement` (\n `Id` INT64 NOT NULL AUTO_INCREMENT,\n", sql)
100+
sql => Assert.StartsWith($"CREATE TABLE `OtherSequenceKind` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (NON_EXISTING_KIND),{Environment.NewLine}", sql),
101+
sql => Assert.StartsWith($"CREATE TABLE `NoSequenceKind` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY,{Environment.NewLine}", sql),
102+
sql => Assert.StartsWith($"CREATE TABLE `GenerationStrategyAlways` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED ALWAYS AS IDENTITY (BIT_REVERSED_POSITIVE),{Environment.NewLine}", sql),
103+
sql => Assert.StartsWith($"CREATE TABLE `AutoIncrement` ({Environment.NewLine} `Id` INT64 NOT NULL AUTO_INCREMENT,{Environment.NewLine}", sql)
104104
);
105105
}
106106
);
@@ -128,7 +128,7 @@ public async Task TestStartMigrateAsync()
128128
new object[] { "20210309110233_Initial", formattedVersion },
129129
}));
130130
_fixture.SpannerMock.AddOrUpdateStatementResult(
131-
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`)\nVALUES ('''20210830_V2''', '''{formattedVersion}''')",
131+
$"INSERT INTO `EFMigrationsHistory` (`MigrationId`, `ProductVersion`){Environment.NewLine}VALUES ('''20210830_V2''', '''{formattedVersion}''')",
132132
StatementResult.CreateUpdateCount(1)
133133
);
134134
await using var db = new MockMigrationSampleDbContext(ConnectionString);
@@ -144,10 +144,10 @@ public async Task TestStartMigrateAsync()
144144
Assert.Collection(update.Statements,
145145
sql => Assert.StartsWith(" DROP INDEX `IDX_TableWithAllColumnTypes_ColDate_ColCommitTS`", sql),
146146
sql => Assert.StartsWith("DROP TABLE `TableWithAllColumnTypes`", sql),
147-
sql => Assert.StartsWith("CREATE TABLE `OtherSequenceKind` (\n `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (NON_EXISTING_KIND),\n", sql),
148-
sql => Assert.StartsWith("CREATE TABLE `NoSequenceKind` (\n `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY,\n", sql),
149-
sql => Assert.StartsWith("CREATE TABLE `GenerationStrategyAlways` (\n `Id` INT64 NOT NULL GENERATED ALWAYS AS IDENTITY (BIT_REVERSED_POSITIVE),\n", sql),
150-
sql => Assert.StartsWith("CREATE TABLE `AutoIncrement` (\n `Id` INT64 NOT NULL AUTO_INCREMENT,\n", sql)
147+
sql => Assert.StartsWith($"CREATE TABLE `OtherSequenceKind` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY (NON_EXISTING_KIND),{Environment.NewLine}", sql),
148+
sql => Assert.StartsWith($"CREATE TABLE `NoSequenceKind` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED BY DEFAULT AS IDENTITY,{Environment.NewLine}", sql),
149+
sql => Assert.StartsWith($"CREATE TABLE `GenerationStrategyAlways` ({Environment.NewLine} `Id` INT64 NOT NULL GENERATED ALWAYS AS IDENTITY (BIT_REVERSED_POSITIVE),{Environment.NewLine}", sql),
150+
sql => Assert.StartsWith($"CREATE TABLE `AutoIncrement` ({Environment.NewLine} `Id` INT64 NOT NULL AUTO_INCREMENT,{Environment.NewLine}", sql)
151151
);
152152
}
153153
);

0 commit comments

Comments
 (0)