Skip to content

Commit e5baa89

Browse files
authored
chore!: Remove legacy IDockerImage (#808)
1 parent dd0da73 commit e5baa89

13 files changed

+16
-66
lines changed

src/Testcontainers.Couchbase/CouchbaseBuilder.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ namespace Testcontainers.Couchbase;
77
[PublicAPI]
88
public sealed class CouchbaseBuilder : ContainerBuilder<CouchbaseBuilder, CouchbaseContainer, CouchbaseConfiguration>
99
{
10-
public const string CouchbaseImage = "couchbase:community-7.1.1";
10+
public const string CouchbaseImage = "couchbase:community-7.0.2";
1111

1212
public const ushort MgmtPort = 8091;
1313

src/Testcontainers/BackwardCompatibility/BackwardsCompatibility.cs

-34
Original file line numberDiff line numberDiff line change
@@ -87,40 +87,6 @@ internal TestcontainersContainer(IContainerConfiguration configuration, ILogger
8787
}
8888
}
8989

90-
namespace Images
91-
{
92-
[PublicAPI]
93-
[Obsolete("Use the IImage interface instead.")]
94-
public interface IDockerImage
95-
{
96-
[NotNull]
97-
string Repository { get; }
98-
99-
[NotNull]
100-
string Name { get; }
101-
102-
[NotNull]
103-
string Tag { get; }
104-
105-
[NotNull]
106-
string FullName { get; }
107-
108-
[CanBeNull]
109-
string GetHostname();
110-
}
111-
112-
/// <summary>
113-
/// Maps the old to the new interface to provide backwards compatibility.
114-
/// </summary>
115-
public sealed partial class DockerImage
116-
{
117-
public DockerImage(IDockerImage image)
118-
: this(image.Repository, image.Name, image.Tag)
119-
{
120-
}
121-
}
122-
}
123-
12490
namespace Builders
12591
{
12692
[PublicAPI]

src/Testcontainers/Builders/ContainerBuilder`3.cs

-5
Original file line numberDiff line numberDiff line change
@@ -304,11 +304,6 @@ public TBuilderEntity WithCreateContainerParametersModifier(Action<CreateContain
304304
return this.WithCreateParameterModifier(parameterModifier);
305305
}
306306

307-
public TBuilderEntity WithImage(IDockerImage image)
308-
{
309-
return this.WithImage(new DockerImage(image));
310-
}
311-
312307
/// <inheritdoc cref="IAbstractBuilder{TBuilderEntity, TResourceEntity, TCreateResourceEntity}" />
313308
protected override TBuilderEntity Init()
314309
{

src/Testcontainers/Builders/IContainerBuilder`2.cs

-3
Original file line numberDiff line numberDiff line change
@@ -368,8 +368,5 @@ public interface IContainerBuilder<out TBuilderEntity, out TContainerEntity> : I
368368
/// <returns>A configured instance of <typeparamref name="TBuilderEntity" />.</returns>
369369
[Obsolete("Use WithCreateParameterModifier(Action<CreateContainerParameters>) instead.")]
370370
TBuilderEntity WithCreateContainerParametersModifier(Action<CreateContainerParameters> parameterModifier);
371-
372-
[Obsolete("Use WithImage(IImage) instead.")]
373-
TBuilderEntity WithImage(IDockerImage image);
374371
}
375372
}

src/Testcontainers/Builders/IImageFromDockerfileBuilder`1.cs

-3
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,5 @@ public interface IImageFromDockerfileBuilder<out TBuilderEntity>
6868
/// <returns>A configured instance of <typeparamref name="TBuilderEntity" />.</returns>
6969
[PublicAPI]
7070
TBuilderEntity WithBuildArgument(string name, string value);
71-
72-
[Obsolete("Use WithName(IImage) instead.")]
73-
TBuilderEntity WithName(IDockerImage image);
7471
}
7572
}

src/Testcontainers/Builders/ImageFromDockerfileBuilder.cs

-5
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,6 @@ public ImageFromDockerfileBuilder WithBuildArgument(string name, string value)
9393
return this.Merge(this.DockerResourceConfiguration, new ImageFromDockerfileConfiguration(buildArguments: buildArguments));
9494
}
9595

96-
public ImageFromDockerfileBuilder WithName(IDockerImage image)
97-
{
98-
return this.WithName(new DockerImage(image));
99-
}
100-
10196
/// <inheritdoc />
10297
public override IFutureDockerImage Build()
10398
{

src/Testcontainers/Images/IImage.cs

+6-6
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,25 @@ namespace DotNet.Testcontainers.Images
66
/// An image instance.
77
/// </summary>
88
[PublicAPI]
9-
public interface IImage : IDockerImage
9+
public interface IImage
1010
{
1111
/// <summary>
1212
/// Gets the repository.
1313
/// </summary>
1414
[NotNull]
15-
new string Repository { get; }
15+
string Repository { get; }
1616

1717
/// <summary>
1818
/// Gets the name.
1919
/// </summary>
2020
[NotNull]
21-
new string Name { get; }
21+
string Name { get; }
2222

2323
/// <summary>
2424
/// Gets the tag.
2525
/// </summary>
2626
[NotNull]
27-
new string Tag { get; }
27+
string Tag { get; }
2828

2929
/// <summary>
3030
/// Gets the full image name.
@@ -33,13 +33,13 @@ public interface IImage : IDockerImage
3333
/// The full image name, like "foo/bar:1.0.0" or "bar:latest" based on the components values.
3434
/// </remarks>
3535
[NotNull]
36-
new string FullName { get; }
36+
string FullName { get; }
3737

3838
/// <summary>
3939
/// Gets the registry hostname.
4040
/// </summary>
4141
/// <returns>The registry hostname.</returns>
4242
[CanBeNull]
43-
new string GetHostname();
43+
string GetHostname();
4444
}
4545
}

tests/Testcontainers.Tests/Fixtures/Containers/Unix/ProtectDockerDaemonSocket.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public abstract class ProtectDockerDaemonSocket : IAsyncLifetime
2222

2323
private readonly string containerCertsDirectoryPath = Path.Combine("/", CertsDirectoryName);
2424

25-
private readonly IDockerImage image = new DockerImage(string.Empty, "docker", DockerVersion + "-dind");
25+
private readonly IImage image = new DockerImage(string.Empty, "docker", DockerVersion + "-dind");
2626

2727
private readonly ITestcontainersContainer container;
2828

tests/Testcontainers.Tests/Fixtures/Images/DockerImageFixtureSerializable.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ public DockerImageFixtureSerializable()
99
{
1010
}
1111

12-
public DockerImageFixtureSerializable(IDockerImage image)
12+
public DockerImageFixtureSerializable(IImage image)
1313
{
1414
this.Image = image;
1515
}
1616

17-
public IDockerImage Image { get; private set; }
17+
public IImage Image { get; private set; }
1818

1919
public void Deserialize(IXunitSerializationInfo info)
2020
{

tests/Testcontainers.Tests/Unit/Configurations/DockerImageNameSubstitutionTest.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public void PrependForObjectConfiguration(string hubImageNamePrefix, string imag
5353
// Given
5454
TestcontainersSettings.HubImageNamePrefix = hubImageNamePrefix;
5555

56-
IDockerImage image = new DockerImage(imageName);
56+
IImage image = new DockerImage(imageName);
5757

5858
// When
5959
IDockerContainer container = new TestcontainersBuilder<TestcontainersContainer>()
@@ -99,7 +99,7 @@ public void DoNotPrependForObjectConfiguration()
9999
// Given
100100
const string imageName = "bar:latest";
101101

102-
IDockerImage image = new DockerImage(imageName);
102+
IImage image = new DockerImage(imageName);
103103

104104
// When
105105
IDockerContainer container = new TestcontainersBuilder<TestcontainersContainer>()

tests/Testcontainers.Tests/Unit/Configurations/DockerRegistryAuthenticationProviderTest.cs

+2-2
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ public sealed class DockerRegistryAuthenticationProviderTest
3838
[InlineData("myregistry.azurecr.io/baz:foo/bar:1.0.0", "myregistry.azurecr.io")]
3939
public void GetHostnameFromDockerImage(string dockerImageName, string hostname)
4040
{
41-
IDockerImage image = new DockerImage(dockerImageName);
41+
IImage image = new DockerImage(dockerImageName);
4242
Assert.Equal(hostname, image.GetHostname());
4343
}
4444

@@ -49,7 +49,7 @@ public void GetHostnameFromDockerImage(string dockerImageName, string hostname)
4949
public void GetHostnameFromHubImageNamePrefix(string repository, string name, string tag)
5050
{
5151
const string hubImageNamePrefix = "myregistry.azurecr.io";
52-
IDockerImage image = new DockerImage(repository, name, tag, hubImageNamePrefix);
52+
IImage image = new DockerImage(repository, name, tag, hubImageNamePrefix);
5353
Assert.Equal(hubImageNamePrefix, image.GetHostname());
5454
}
5555

tests/Testcontainers.Tests/Unit/Configurations/WaitUntilContainerIsHealthyTest.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ namespace DotNet.Testcontainers.Tests.Unit.Configurations
99

1010
public sealed class WaitUntilContainerIsHealthyTest : IClassFixture<HealthCheckFixture>
1111
{
12-
private readonly IDockerImage image;
12+
private readonly IImage image;
1313

1414
public WaitUntilContainerIsHealthyTest(HealthCheckFixture image)
1515
{

tests/Testcontainers.Tests/Unit/Images/TestcontainersImageTest.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ public void WhenImageNameGetsAssigned(DockerImageFixtureSerializable serializabl
5151
var expected = serializable.Image;
5252

5353
// When
54-
IDockerImage dockerImage = new DockerImage(fullName);
54+
IImage dockerImage = new DockerImage(fullName);
5555

5656
// Then
5757
Assert.Equal(expected.Repository, dockerImage.Repository);

0 commit comments

Comments
 (0)