public void FindResourceHelper_SerializeResourceForStudio_WhenNotNewResource_ExpectValidResource()
        {
            //------------Setup for test--------------------------
            var id = Guid.NewGuid();
            IResource res = new Resource { ResourceID = id, IsNewResource = false };

            //------------Execute Test---------------------------

            var result = new FindResourceHelper().SerializeResourceForStudio(res);

            //------------Assert Results-------------------------

            Assert.IsFalse(result.IsNewResource);
            Assert.AreEqual(id, result.ResourceID);
        }
        public void FindResourceHelper_SerializeResourceForStudio_WhenCheckingAllProperties_ExpectValidResource()
        {
            //------------Setup for test--------------------------
            var id = Guid.NewGuid();

            var theErrors = new List<IErrorInfo>
            {
                new ErrorInfo
                    {
                        ErrorType = ErrorType.None, 
                        FixData = "fixme", 
                        Message = "message", 
                        FixType = FixType.None, 
                        InstanceID = id, StackTrace = "stacktrace"
                    }
            };

            Resource res = new Resource
            {
                Inputs = "inputs",
                Outputs = "outputs",
                ResourceID = id,
                IsNewResource = false,
                DataList = new StringBuilder("abc"),
                IsValid = true,
                ResourcePath = "Category",
                ResourceName = "Workflow",
                ResourceType = ResourceType.WorkflowService,
                Errors = theErrors,
                VersionInfo = new VersionInfo(DateTime.Now,"","u","1",id,Guid.NewGuid())
            };

            //------------Execute Test---------------------------
            var result = new FindResourceHelper().SerializeResourceForStudio(res);

            //------------Assert Results-------------------------

            // convert to string due to silly interface problems ;)
            var errorString = JsonConvert.SerializeObject(theErrors);
            var resultErrorString = JsonConvert.SerializeObject(result.Errors);

            Assert.IsFalse(result.IsNewResource);
            Assert.IsTrue(result.IsValid);

            Assert.AreEqual(id, result.ResourceID);
            Assert.AreEqual("abc", result.DataList);
            Assert.AreEqual("Category", result.ResourceCategory);
            Assert.AreEqual("Workflow", result.ResourceName);
            Assert.AreEqual(ResourceType.WorkflowService, result.ResourceType);
            Assert.AreEqual(errorString, resultErrorString);
            Assert.AreEqual("inputs", result.Inputs);
            Assert.AreEqual("outputs", result.Outputs);
            Assert.AreEqual(res.VersionInfo, result.VersionInfo);
        }