1 // Copyright 2004-2008 Castle Project - http://www.castleproject.org/
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace Castle
.MicroKernel
.Tests
17 using Castle
.Core
.Configuration
;
18 using Castle
.MicroKernel
.Tests
.ClassComponents
;
19 using NUnit
.Framework
;
22 public class FacilityTestCase
24 private const string FacilityKey
= "testFacility";
25 private IKernel _kernel
;
26 private HiperFacility _facility
;
28 public FacilityTestCase()
35 _kernel
= new DefaultKernel();
37 IConfiguration confignode
= new MutableConfiguration("facility");
38 IConfiguration facilityConf
= confignode
.Children
.Add(new MutableConfiguration(FacilityKey
));
39 _kernel
.ConfigurationStore
.AddFacilityConfiguration(FacilityKey
, confignode
);
41 _facility
= new HiperFacility();
43 Assert
.IsFalse(_facility
.Initialized
);
44 _kernel
.AddFacility(FacilityKey
, _facility
);
48 public void Creation()
50 IFacility facility
= _kernel
.GetFacilities()[0];
52 Assert
.IsNotNull(facility
);
53 Assert
.AreSame(_facility
, facility
);
57 public void LifeCycle()
59 Assert
.IsFalse(_facility
.Terminated
);
61 IFacility facility
= _kernel
.GetFacilities()[0];
63 Assert
.IsTrue(_facility
.Initialized
);
64 Assert
.IsFalse(_facility
.Terminated
);
68 Assert
.IsTrue(_facility
.Initialized
);
69 Assert
.IsTrue(_facility
.Terminated
);