                     let randomTimeInSeptember26_week_2015 = dateFormatter.dateFromString("2015-09-22 17:49:32")!
                     expect(TimeUnit().endOfWeek(randomTimeInSeptember26_week_2015)).to(equal(endOfSeptember26_2015))
                     expect(TimeUnit.endOfWeek(randomTimeInSeptember26_week_2015)).to(equal(endOfSeptember26_2015))
+                }
+                
+                it ("can calculate the end of a week for calendar with Monday as the first weekday") {
+                    let endOfOctober11_2015 = dateFormatter.dateFromString("2015-10-11 23:59:59")!
+                    let beginningOfOctober10_2015 = dateFormatter.dateFromString("2015-10-10 00:00:00")!
+                    let tunit = TimeUnitTests.timeUnitWithCalendarWithMondayAsFirstWeekday()
+                    expect(tunit.endOfWeek(beginningOfOctober10_2015)).to(equal(endOfOctober11_2015))
                 }
             }
             

                expect(TimeUnit.daysOfWeek(dateInWeekOfOctober7_2015)).to(equal(daysOfWeekOctober7_2015))
            }
            
// MARK: daysOfMonth
            it ("can create days of February 2015") {
                let daysInFebruary_2015 = [

import Tunits

class TimeUnitTests: QuickSpec {
    static private func timeUnitWithCalendarWithMondayAsFirstWeekday() -> TimeUnit {
        let tunit = TimeUnit()
        let calendar = NSCalendar.currentCalendar()
        calendar.firstWeekday = 2 // Monday
        tunit.calendar = calendar
        return tunit
    }
    
    override func spec() {
        describe("Initialization") {
            it ("can be initialized") {
