public void TestGivenSamples(int itemId, TableIds tableId, string time, string expected) { var subject = new Id(time.FakeNow()); var act = subject.NewId(tableId, itemId); Assert.Equal(expected, act); }
public string NewId(TableIds tblId, Int32 ItemId) { var left = (ItemId ^ ((Int32)tblId << 24)).SwapEndianness(); var right = this.timeProvider.Now.UnixTime().SwapEndianness(); var value = (long)left << 32 | (uint)right; return(value.Base32HexEncodeShort()); }
internal void RefreshPossibleTableId() { PossibleTableId = 1; // possible infinite loop, but how many tables do you have anyway? while (TableIds.Contains(PossibleTableId)) { ++PossibleTableId; } }