#17541: Fixing bug when settings where overwritten in multi tenancy

Work Items: 17541

--HG--
branch : 1.x
This commit is contained in:
Sebastien Ros
2011-03-31 18:30:09 -07:00
parent ac381cc126
commit fca6683d18
2 changed files with 15 additions and 1 deletions
@@ -40,6 +40,17 @@ namespace Orchard.Azure.Tests.Environment.Configuration {
Assert.That(settings.DataConnectionString, Is.EqualTo("something else")); Assert.That(settings.DataConnectionString, Is.EqualTo("something else"));
} }
[Test]
public void SettingsShouldBeOverwritable() {
ShellSettingsManager.SaveSettings(new ShellSettings { Name = "Default", DataProvider = "SQLCe", DataConnectionString = "something else" });
ShellSettingsManager.SaveSettings(new ShellSettings { Name = "Default", DataProvider = "SQLCe2", DataConnectionString = "something else2" });
var settings = ShellSettingsManager.LoadSettings().Single();
Assert.That(settings, Is.Not.Null);
Assert.That(settings.Name, Is.EqualTo("Default"));
Assert.That(settings.DataProvider, Is.EqualTo("SQLCe2"));
Assert.That(settings.DataConnectionString, Is.EqualTo("something else2"));
}
[Test] [Test]
public void MultipleFilesCanBeDetected() { public void MultipleFilesCanBeDetected() {
@@ -33,7 +33,10 @@ namespace Orchard.Azure.Environment.Configuration {
void IShellSettingsManager.SaveSettings(ShellSettings settings) { void IShellSettingsManager.SaveSettings(ShellSettings settings) {
var content = ComposeSettings(settings); var content = ComposeSettings(settings);
var filePath = _fileSystem.Combine(settings.Name, SettingsFilename); var filePath = _fileSystem.Combine(settings.Name, SettingsFilename);
var file = _fileSystem.CreateFile(filePath);
var file = _fileSystem.FileExists(filePath)
? _fileSystem.GetFile(filePath)
: _fileSystem.CreateFile(filePath);
using (var stream = file.OpenWrite()) { using (var stream = file.OpenWrite()) {
using (var writer = new StreamWriter(stream)) { using (var writer = new StreamWriter(stream)) {