Skip to content

Commit d135f7e

Browse files
committed
Refactor and mark obsolete methods, improve formatting
- Added `[Obsolete]` attribute to `OnActivateAsync` in `ConductorWithCollectionOneActiveTests.cs` to indicate it should be replaced by `OnActivatedAsync`. - Introduced new `OnActivatedAsync` method in `ConductorWithCollectionOneActiveTests.cs`. - Corrected spacing and formatting issues in `ConductorWithCollectionOneActiveTests.cs` for better readability. - Added a summary comment to `BootstrapperBase` class in `BootstrapperBase.cs`. - Made minor formatting adjustments in `BootstrapperBase.cs`. - Removed unnecessary `#pragma` directives and added `[Obsolete]` attribute in `ScreenExtentionTests.cs`. - Skipped a test in `ConductorWithCollectionOneActiveTests.cs` with `[Fact(Skip = "...")]` attribute, providing a reason for skipping.
1 parent 4988bb1 commit d135f7e

File tree

3 files changed

+29
-19
lines changed

3 files changed

+29
-19
lines changed

src/Caliburn.Micro.Core.Tests/ConductorWithCollectionOneActiveTests.cs

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,22 @@ private class ActivateScreen : Screen
3939
public int ActivateCalledCount { get; private set; }
4040
public bool AutoContinue { get; set; }
4141

42+
[Obsolete("Please use OnActivatedAsync instead.")]
4243
protected override async Task OnActivateAsync(CancellationToken cancellationToken)
4344
{
4445
ActivateCalledCount++;
4546
await Task.Delay(100, cancellationToken);
4647
if (AutoContinue)
4748
RequestContinue?.Invoke(this, EventArgs.Empty);
4849
}
50+
51+
protected override async Task OnActivatedAsync(CancellationToken cancellationToken)
52+
{
53+
ActivateCalledCount++;
54+
await Task.Delay(100, cancellationToken);
55+
if (AutoContinue)
56+
RequestContinue?.Invoke(this, EventArgs.Empty);
57+
}
4958
}
5059

5160
private class ActivatedScreen : Screen
@@ -54,12 +63,12 @@ private class ActivatedScreen : Screen
5463

5564
public int ActivateCalledCount { get; private set; }
5665
public bool AutoContinue { get; set; }
57-
66+
5867
protected override async Task OnActivatedAsync(CancellationToken cancellationToken)
5968
{
6069
ActivateCalledCount++;
6170
await Task.Delay(100, cancellationToken);
62-
if(AutoContinue)
71+
if (AutoContinue)
6372
RequestContinue?.Invoke(this, EventArgs.Empty);
6473
}
6574
}
@@ -123,7 +132,7 @@ public async Task CanCloseIsTrueWhenItemsAreClosable()
123132
conductor.Items.Add(conducted);
124133

125134
await ((IActivate)conductor).ActivateAsync(CancellationToken.None);
126-
var canClose =await conductor.CanCloseAsync(CancellationToken.None);
135+
var canClose = await conductor.CanCloseAsync(CancellationToken.None);
127136

128137
Assert.True(canClose);
129138
Assert.False(conducted.IsClosed);
@@ -141,7 +150,7 @@ public async Task CanCloseIsTrueWhenItemsAreNotClosableAndCloseStrategyCloses()
141150
IsClosable = true
142151
};
143152
conductor.Items.Add(conducted);
144-
await((IActivate)conductor).ActivateAsync(CancellationToken.None);
153+
await ((IActivate)conductor).ActivateAsync(CancellationToken.None);
145154
var canClose = await conductor.CanCloseAsync(CancellationToken.None);
146155

147156
Assert.True(canClose);
@@ -166,17 +175,17 @@ public async Task ActivateWhileActivateOneLevel()
166175
var conductor = new Conductor<IScreen>.Collection.OneActive();
167176
var viewModel1 = new ActivateScreen()
168177
{
169-
DisplayName = "ViewModel 1",
178+
DisplayName = "ViewModel 1",
170179
AutoContinue = true
171180
};
172181
conductor.Items.Add(viewModel1);
173182
var viewModel2 = new ActivateScreen() { DisplayName = "ViewModel 2" };
174183
conductor.Items.Add(viewModel2);
175184
viewModel1.RequestContinue += (sender, e) => { conductor.ActivateItemAsync(viewModel2).Wait(); };
176-
185+
177186
await conductor.ActivateAsync();
178187
await conductor.ActivateItemAsync(viewModel1);
179-
188+
180189
Assert.False(viewModel1.IsActive);
181190
Assert.Equal(1, viewModel1.ActivateCalledCount);
182191
Assert.True(viewModel2.IsActive);
@@ -189,17 +198,17 @@ public async Task ActivatedWhileActivatedOneLevel()
189198
var conductor = new Conductor<IScreen>.Collection.OneActive();
190199
var viewModel1 = new ActivatedScreen()
191200
{
192-
DisplayName = "ViewModel 1",
201+
DisplayName = "ViewModel 1",
193202
AutoContinue = true
194203
};
195204
conductor.Items.Add(viewModel1);
196205
var viewModel2 = new ActivatedScreen() { DisplayName = "ViewModel 2" };
197206
conductor.Items.Add(viewModel2);
198207
viewModel1.RequestContinue += (sender, e) => { conductor.ActivateItemAsync(viewModel2).Wait(); };
199-
208+
200209
await conductor.ActivateAsync();
201210
await conductor.ActivateItemAsync(viewModel1);
202-
211+
203212
Assert.False(viewModel1.IsActive);
204213
Assert.Equal(1, viewModel1.ActivateCalledCount);
205214
Assert.True(viewModel2.IsActive);
@@ -223,7 +232,7 @@ public async Task ActivateWhileActivateStackedLevels()
223232
await outerConductor.ActivateAsync();
224233
await outerConductor.ActivateItemAsync(innerConductor);
225234
await innerConductor.ActivateItemAsync(viewModel1);
226-
235+
227236
await outerConductor.ChangeActiveItemAsyncPublic(somePage, false);
228237
Assert.True(somePage.IsActive);
229238
viewModel1.AutoContinue = true;
@@ -235,7 +244,7 @@ public async Task ActivateWhileActivateStackedLevels()
235244
Assert.True(viewModel2.IsActive);
236245
Assert.Equal(1, viewModel2.ActivateCalledCount);
237246
}
238-
247+
239248
[Fact(Skip = "ActiveItem currently set regardless of IsActive value. See http://caliburnmicro.codeplex.com/discussions/276375")]
240249
public async Task ChildrenAreNotActivatedIfConductorIsNotActive()
241250
{
@@ -326,7 +335,7 @@ public async Task ActiveItemSetterShouldSetThePropertySynchronouslyWhenOnDeactiv
326335
conductor.Items.Add(conducted1);
327336
var conducted2 = new Screen();
328337
conductor.Items.Add(conducted2);
329-
await((IActivate)conductor).ActivateAsync(CancellationToken.None);
338+
await ((IActivate)conductor).ActivateAsync(CancellationToken.None);
330339
conductor.ActiveItem = conducted1;
331340
conductor.ActiveItem = conducted2;
332341
Assert.NotNull(conductor.ActiveItem);

src/Caliburn.Micro.Core.Tests/ScreenExtentionTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public override Task<bool> CanCloseAsync(CancellationToken cancellationToken = d
101101
return Task.FromResult(IsClosable);
102102
}
103103

104-
#pragma warning disable CS0618 // Type or member is obsolete
104+
[Obsolete("Use OnActivateAsync instead.")]
105105
protected override async Task OnActivateAsync(CancellationToken cancellationToken)
106106
{
107107
if (deactivationDelay.HasValue)
@@ -110,7 +110,7 @@ protected override async Task OnActivateAsync(CancellationToken cancellationToke
110110
}
111111

112112
await base.OnActivateAsync(cancellationToken);
113-
#pragma warning restore CS0618 // Type or member is obsolete
113+
114114

115115
WasActivated = true;
116116
IsClosable = false;

src/Caliburn.Micro.Platform/Platforms/netcore-avalonia/BootstrapperBase.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@
99

1010
namespace Caliburn.Micro
1111
{
12+
/// <summary>
13+
/// Base class for bootstrapping the application.
14+
/// </summary>
1215
public class BootstrapperBase
1316
{
1417
static readonly ILog Log = LogManager.GetLog(typeof(BootstrapperBase));
@@ -33,7 +36,6 @@ public void Initialize()
3336

3437
PlatformProvider.Current = new XamlPlatformProvider();
3538

36-
3739
var baseExtractTypes = AssemblySourceCache.ExtractTypes;
3840

3941
AssemblySourceCache.ExtractTypes = assembly =>
@@ -90,7 +92,7 @@ protected virtual void StartRuntime()
9092

9193
Application = Application.Current;
9294
PrepareApplication();
93-
95+
9496
Configure();
9597
IoC.GetInstance = GetInstance;
9698
IoC.GetAllInstances = GetAllInstances;
@@ -105,7 +107,7 @@ protected virtual void PrepareApplication()
105107
if (Application.ApplicationLifetime is IControlledApplicationLifetime controlledApplicationLifetime)
106108
{
107109
controlledApplicationLifetime.Startup += OnStartup;
108-
110+
109111
controlledApplicationLifetime.Exit += OnExit;
110112
}
111113
}
@@ -191,7 +193,6 @@ protected async Task DisplayRootViewForAsync(Type viewModelType, IDictionary<str
191193
window.Show();
192194
}
193195

194-
195196
/// <summary>
196197
/// Locates the view model, locates the associate view, binds them and shows it as the root view.
197198
/// </summary>

0 commit comments

Comments
 (0)