public void GetHashCode_ShouldBeEqualWhenAllItemsEqual()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", 123).GetHashCode();
            var right = new DirectoryV3DevicesPostRequest("id", 123).GetHashCode();

            Assert.AreEqual(left, right);
        }
        public void GetHashCode_ShouldBeEqualWhenTtlIsNulll()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", null).GetHashCode();
            var right = new DirectoryV3DevicesPostRequest("id", null).GetHashCode();

            Assert.AreEqual(left, right);
        }
        public void Equals_ShouldBeFalseWhenIdentifierIsDifferentl()
        {
            var left  = new DirectoryV3DevicesPostRequest("id1");
            var right = new DirectoryV3DevicesPostRequest("id2");

            Assert.AreNotEqual(left, right);
        }
        public void Equals_ShouldBeFalseWhenTtlIsDifferentl()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", 1);
            var right = new DirectoryV3DevicesPostRequest("id", 2);

            Assert.AreNotEqual(left, right);
        }
        public void Equals_ShouldBeTrueWhenAllItemsEqual()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", 123);
            var right = new DirectoryV3DevicesPostRequest("id", 123);

            Assert.AreEqual(left, right);
        }
        public void Equals_ShouldBeTrueWhenTtlIsNulll()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", null);
            var right = new DirectoryV3DevicesPostRequest("id", null);

            Assert.AreEqual(left, right);
        }
        public void GetHashCode_ShouldNotBeEqualWhenTtlIsDifferentl()
        {
            var left  = new DirectoryV3DevicesPostRequest("id", 1).GetHashCode();
            var right = new DirectoryV3DevicesPostRequest("id", 2).GetHashCode();

            Assert.AreNotEqual(left, right);
        }
        public DirectoryV3DevicesPostResponse DirectoryV3DevicesPost(DirectoryV3DevicesPostRequest request, EntityIdentifier subject)
        {
            var response          = ExecuteRequest(HttpMethod.POST, "/directory/v3/devices", subject, request, null);
            var decryptedResponse = DecryptResponse <DirectoryV3DevicesPostResponse>(response);

            return(decryptedResponse);
        }
示例#9
0
        public void LinkDevice_ShouldCallAndReturnDataFromTransportLayer()
        {
            var mockTransport   = new Mock <ITransport>();
            var client          = new BasicDirectoryClient(TestConsts.DefaultDirectoryId, mockTransport.Object);
            var expectedRequest = new DirectoryV3DevicesPostRequest("user id", 123);

            string deviceID = Guid.NewGuid().ToString();

            mockTransport.Setup(
                t => t.DirectoryV3DevicesPost(
                    It.IsAny <DirectoryV3DevicesPostRequest>(),
                    It.IsAny <EntityIdentifier>()
                    )
                ).Returns(new DirectoryV3DevicesPostResponse {
                Code = "code", QrCode = "qrcode", DeviceId = deviceID
            });

            var response = client.LinkDevice("user id", 123);

            Assert.AreEqual("code", response.Code);
            Assert.AreEqual("qrcode", response.QrCode);
            Assert.AreEqual(deviceID, response.DeviceId.ToString());

            mockTransport.Verify(
                x => x.DirectoryV3DevicesPost(It.Is <DirectoryV3DevicesPostRequest>(
                                                  r => r.Identifier == "user id" &&
                                                  r.TTL == 123
                                                  ),
                                              It.IsAny <EntityIdentifier>()), Times.Once());
        }
        public void ShouldSerializeCorrectlyWithTTL()
        {
            var encoder = new JsonNetJsonEncoder();
            var o       = new DirectoryV3DevicesPostRequest("id", 1234);
            var json    = encoder.EncodeObject(o);

            Assert.AreEqual("{\"identifier\":\"id\",\"ttl\":1234}", json);
        }
        public DirectoryUserDeviceLinkData LinkDevice(string userId, int?ttl = null)
        {
            var request  = new DirectoryV3DevicesPostRequest(userId, ttl);
            var response = _transport.DirectoryV3DevicesPost(request, _directoryId);

            Guid?deviceID = Guid.TryParse(response.DeviceId, out Guid deviceGUID) ? (Guid?)deviceGUID : null;

            return(new DirectoryUserDeviceLinkData(response.Code, response.QrCode, deviceID));
        }
示例#12
0
        public void LinkDevice_ShouldReturnNullGuidWhenNotPassedInValue()
        {
            var mockTransport   = new Mock <ITransport>();
            var client          = new BasicDirectoryClient(TestConsts.DefaultDirectoryId, mockTransport.Object);
            var expectedRequest = new DirectoryV3DevicesPostRequest("user id", 123);

            mockTransport.Setup(
                t => t.DirectoryV3DevicesPost(
                    It.IsAny <DirectoryV3DevicesPostRequest>(),
                    It.IsAny <EntityIdentifier>()
                    )
                ).Returns(new DirectoryV3DevicesPostResponse {
                Code = "code", QrCode = "qrcode"
            });

            var response = client.LinkDevice("user id", 123);

            Assert.AreEqual(null, response.DeviceId);
        }
        public void Constructor_ShouldSetTtlProperly()
        {
            var o = new DirectoryV3DevicesPostRequest("id", 1234);

            Assert.AreEqual(1234, o.TTL);
        }
        public void Constructor_ShouldSetIdProperly()
        {
            var o = new DirectoryV3DevicesPostRequest("id");

            Assert.AreEqual("id", o.Identifier);
        }