Наследование: MonoBehaviour
Пример #1
0
        public void WriteRecordWithNullRecordTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first column",
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter(stream)
            {
                AutoFlush = true
            };
            var csv = new CsvWriter(writer);

            csv.Configuration.RegisterClassMap <TestRecordMap>();

            csv.WriteRecord(record);
            csv.WriteRecord((TestRecord)null);
            csv.WriteRecord(record);

            stream.Position = 0;
            var reader   = new StreamReader(stream);
            var csvFile  = reader.ReadToEnd();
            var expected = "first column,1,string column,test\r\n";

            expected += ",,,\r\n";
            expected += "first column,1,string column,test\r\n";

            Assert.AreEqual(expected, csvFile);
        }
Пример #2
0
        public TestRecordExecuteViewModel(
            TestRecord record,
            BatteryType batteryType,
            ObservableCollection <Battery> batteries,
            ObservableCollection <Tester> testers,
            ObservableCollection <Channel> channels,
            ObservableCollection <Chamber> chambers
            ,
            ProgramType type)     //
        {
            if (record == null)
            {
                throw new ArgumentNullException("record");
            }

            _record = record;
            //_batteryRepository = Repositories._batteryRepository;
            //_batterytypeRepository = Repositories._batterytypeRepository;
            //_chamberRepository = Repositories._chamberRepository;
            //_testerRepository = Repositories._testerRepository;
            //_channelRepository = Repositories._channelRepository;
            _batteryType = batteryType;
            _batteries   = batteries;
            _testers     = testers;
            _channels    = channels;
            _chambers    = chambers;
            _type        = type;

            //_record.PropertyChanged += _record_PropertyChanged;
        }
Пример #3
0
        public void WriteRecordTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first column",
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter(stream)
            {
                AutoFlush = true
            };
            var csv = new CsvWriter(writer, CultureInfo.InvariantCulture);

            csv.Context.RegisterClassMap <TestRecordMap>();

            csv.WriteRecord(record);
            csv.NextRecord();

            stream.Position = 0;
            var reader   = new StreamReader(stream);
            var csvFile  = reader.ReadToEnd();
            var expected = "first column,1,string column,test\r\n";

            Assert.AreEqual(expected, csvFile);
        }
Пример #4
0
        public void WriteFieldTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                DateColumn    = new DateTime(2012, 10, 1, 12, 12, 12),
                DecimalColumn = 150.99m,
                FirstColumn   = "first column",
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter(stream)
            {
                AutoFlush = true
            };
            var csv = new CsvWriter(writer);

            csv.Configuration.Delimiter   = ",";
            csv.Configuration.CultureInfo = new CultureInfo("en-US");
            csv.Configuration.RegisterClassMap <TestRecordMap>();

            csv.WriteRecord(record);
            csv.NextRecord();

            stream.Position = 0;
            var reader   = new StreamReader(stream);
            var csvFile  = reader.ReadToEnd();
            var expected = "first column,0001,10/1/2012,$150.99\r\n";

            Assert.AreEqual(expected, csvFile);
        }
Пример #5
0
        public void WriteRecordTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first column",
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter(stream);
            var csv    = new CsvWriter(writer, new CsvWriterOptions {
                HasHeaderRecord = true
            });

            csv.WriteRecord(record);

            stream.Position = 0;
            var reader   = new StreamReader(stream);
            var csvFile  = reader.ReadToEnd();
            var expected = "FirstColumn,Int Column,TypeConvertedColumn,StringColumn\r\n";

            expected += "first column,1,test,string column\r\n";

            Assert.AreEqual(expected, csvFile);
        }
Пример #6
0
        public void WriteRecordsNoFieldsQuotedTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string \" column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first, column",
            };

            var config = new CsvConfiguration(CultureInfo.InvariantCulture)
            {
                ShouldQuote = (_, _, _) => false,
            };
            string csv;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var writer = new StreamWriter(stream))
                        using (var csvWriter = new CsvWriter(writer, config))
                        {
                            csvWriter.Context.RegisterClassMap <TestRecordMap>();
                            csvWriter.WriteRecord(record);
                            csvWriter.NextRecord();

                            writer.Flush();
                            stream.Position = 0;

                            csv = reader.ReadToEnd();
                        }

            var expected = "first, column,1,string \" column,test\r\n";

            Assert.AreEqual(expected, csv);
        }
Пример #7
0
        public void WriteRecordsWithInvariantCultureTest()
        {
            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var writer = new StreamWriter(stream))
                        using (var csv = new CsvWriter(writer))
                        {
                            csv.Configuration.CultureInfo = CultureInfo.InvariantCulture;
                            csv.Configuration.RegisterClassMap <TestRecordMap>();

                            var record = new TestRecord
                            {
                                IntColumn     = 1,
                                FirstColumn   = "first column",
                                IgnoredColumn = "ignored column",
                                StringColumn  = "string column",
                            };

                            csv.WriteRecord(record);
                            writer.Flush();
                            stream.Position = 0;

                            var csvString = reader.ReadToEnd();
                        }
        }
Пример #8
0
        public void WriteRecordsNoFieldsQuotedTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string \" column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first, column",
            };

            string csv;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var writer = new StreamWriter(stream))
                        using (var csvWriter = new CsvWriter(writer))
                        {
                            csvWriter.Configuration.QuoteNoFields = true;
                            csvWriter.Configuration.RegisterClassMap <TestRecordMap>();
                            csvWriter.WriteRecord(record);

                            writer.Flush();
                            stream.Position = 0;

                            csv = reader.ReadToEnd();
                        }

            var expected = "first, column,1,string \" column,test\r\n";

            Assert.AreEqual(expected, csv);
        }
Пример #9
0
        public void ScheduleRecords_RefuseOverlappingRecord_GetForMultipleUsers(User firstUser, int firstId, User secondUser, int secondId,
                                                                                TestRecord firstRecord, TestRecord secondRecord)
        {
            firstUser.Id = firstId;
            var size = RecordModel.GetAllRecords().Count;

            firstRecord.SetUser(firstUser);

            var firstUserSchedule  = from record in RecordModel.GetAllRecords() where record.User.Id == firstId select record;
            var secondUserSchedule = from record in RecordModel.GetAllRecords() where record.User.Id == secondId select record;
            var firstUserSize      = firstUserSchedule.Count();
            var secondUserSize     = secondUserSchedule.Count();

            CreateRecordWithDialogueClass(firstRecord);

            secondUser.Id = secondId;
            secondRecord.SetUser(secondUser);
            CreateRecordWithDialogueClass(secondRecord);

            firstUserSchedule  = from record in RecordModel.GetAllRecords() where record.User.Id == firstId select record;
            secondUserSchedule = from record in RecordModel.GetAllRecords() where record.User.Id == secondId select record;

            Assert.AreEqual(size + 1, RecordModel.GetAllRecords().Count);
            Assert.AreEqual(firstUserSize + 1, firstUserSchedule.Count());
            Assert.AreEqual(secondUserSize, secondUserSchedule.Count());
        }
Пример #10
0
        public void WriteRecordsAllFieldsQuotedTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first column",
            };

            string csv;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var writer = new StreamWriter(stream))
                        using (var csvWriter = new CsvWriter(writer))
                        {
                            csvWriter.Configuration.Delimiter   = ",";
                            csvWriter.Configuration.ShouldQuote = (field, context) => true;
                            csvWriter.Configuration.RegisterClassMap <TestRecordMap>();
                            csvWriter.WriteRecord(record);
                            csvWriter.NextRecord();

                            writer.Flush();
                            stream.Position = 0;

                            csv = reader.ReadToEnd();
                        }

            var expected = "\"first column\",\"1\",\"string column\",\"test\"\r\n";

            Assert.AreEqual(expected, csv);
        }
Пример #11
0
        public void WriteFieldTest()
        {
            var record = new TestRecord
            {
                IntColumn           = 1,
                DateColumn          = new DateTime(2012, 10, 1, 12, 12, 12),
                DecimalColumn       = 150.99m,
                FirstColumn         = "first column",
                TypeConvertedColumn = "string"
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter(stream)
            {
                AutoFlush = true
            };
            var csv = new CsvWriter(writer);

            csv.WriteRecord(record);

            stream.Position = 0;
            var reader   = new StreamReader(stream);
            var csvFile  = reader.ReadToEnd();
            var expected = "FirstColumn,Int Column,DateColumn,DecimalColumn,TypeConvertedColumn\r\n";

            expected += "first column,0001,1/10/2012,$150.99,Type-string\r\n";

            Assert.AreEqual(expected, csvFile);
        }
Пример #12
0
        public void Echo()
        {
            var record = new TestRecord
            {
                hash =
                    new MD5
                {
                    Value =
                        new byte[] { 1, 2, 3, 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, 6, 7, 8 }
                },
                kind = Kind.FOO,
                name = "My Record"
            };

            // Test synchronous RPC:
            TestRecord testRecord = simpleClient.echo(record);

            Assert.AreEqual(record, testRecord);

            // Test asynchronous RPC (future):
            var future1 = new CallFuture <TestRecord>();

            simpleClient.echo(record, future1);
            Assert.AreEqual(record, future1.WaitForResult(2000));
            Assert.IsNull(future1.Error);

            // Test asynchronous RPC (callback):
            var future2 = new CallFuture <TestRecord>();

            simpleClient.echo(record, new NestedCallFuture <TestRecord>(future2));

            Assert.AreEqual(record, future2.WaitForResult(2000));
            Assert.IsNull(future2.Error);
        }
        public void Test_Index_Default()
        {
            TestRecord record1 = new TestRecord();

            record1.ID   = Guid.NewGuid();
            record1.Text = "Record 1";

            TestRecord record2 = new TestRecord();

            record2.ID   = Guid.NewGuid();
            record2.Text = "Record 2";

            TestRecord record3 = new TestRecord();

            record3.ID   = Guid.NewGuid();
            record3.Text = "Record 3";

            TestRecord record4 = new TestRecord();

            record4.ID   = Guid.NewGuid();
            record4.Text = "Record 4";

            if (DataAccess.Data == null)
            {
                throw new InvalidOperationException("Data provider has not been initialized. Run setup.");
            }

            DataAccess.Data.Saver.Save(record1);
            DataAccess.Data.Saver.Save(record2);
            DataAccess.Data.Saver.Save(record3);
            DataAccess.Data.Saver.Save(record4);

            // Check that the records do exist
            int count = DataAccess.Data.Indexer.GetEntities <TestRecord>().Length;

            Assert.AreEqual(4, count, "Invalid number of TestRecord objects found.");

            BaseIndexProjection page = new BaseIndexProjection("Index", typeof(TestRecord), false);

            // Disable authorisation requirements for test
            page.RequireAuthorisation = false;

            IndexController controller = IndexController.New(page, false);

            if (controller == null)
            {
                throw new Exception("Controller is null.");
            }

            controller.Index();

            Assert.IsNotNull(controller.DataSource, "The DataSource property on the controller wasn't set.");

            Assert.AreEqual(4, controller.DataSource.Length, "Item count mismatch.");

            foreach (TestRecord record in DataAccess.Data.Indexer.GetEntities <TestRecord>())
            {
                DataAccess.Data.Deleter.Delete(record);
            }
        }
Пример #14
0
        public void WriteRecordsAllFieldsQuotedTest()
        {
            var record = new TestRecord
            {
                IntColumn     = 1,
                StringColumn  = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn   = "first column",
            };

            string csv;

            using (var stream = new MemoryStream())
                using (var reader = new StreamReader(stream))
                    using (var writer = new StreamWriter(stream))
                        using (var csvWriter = new CsvWriter(writer))
                        {
                            csvWriter.Configuration.QuoteAllFields = true;
                            csvWriter.WriteRecord(record);

                            writer.Flush();
                            stream.Position = 0;

                            csv = reader.ReadToEnd();
                        }

            var expected = "\"FirstColumn\",\"Int Column\",\"StringColumn\",\"TypeConvertedColumn\"\r\n";

            expected += "\"first column\",\"1\",\"string column\",\"test\"\r\n";

            Assert.AreEqual(expected, csv);
        }
Пример #15
0
        public void ShouldDeserializeRecord()
        {
            var original     = new TestRecord(1, EmployeeType.Values.Permanent);
            var serialized   = XtiSerializer.Serialize(original);
            var deserialized = XtiSerializer.Deserialize(serialized, () => new TestRecord(0, EmployeeType.Values.None));

            Assert.That(deserialized, Is.EqualTo(original));
        }
Пример #16
0
        public void RecordType_Deconstruction_WorksCorrectly()
        {
            var record = new TestRecord(2, "Hello");

            var(val1, val2) = record;
            Assert.Equal(2, val1);
            Assert.Equal("Hello", val2);
        }
Пример #17
0
 internal static TimeSpan GetTestDuration(TestRecord test)
 {
     if (test != null)
     {
         return(test.Duration);
     }
     return(TimeSpan.MinValue);
 }
        private static string GetTestRecordFilename(string baseOutputDir, TestRecord t)
        {
            var categoryDir = Path.Combine(baseOutputDir, SanitizeFilename(t.Category));
            Directory.CreateDirectory(categoryDir);

            var filename = SanitizeFilename(t.Description) + ".napltest";
            return Path.Combine(categoryDir, filename);
        }
Пример #19
0
        public TestRecordCommitViewModel(
            TestRecord record
            )     //
        {
            _record = record ?? throw new ArgumentNullException("record");

            _record.PropertyChanged += _record_PropertyChanged;
        }
        public ActionResult DeleteConfirmed(int id)
        {
            TestRecord testRecord = db.TestRecords.Find(id);

            db.TestRecords.Remove(testRecord);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #21
0
        public static ExecutionStateCommand Apply(TestRecord test, DirectoryInfo testBinariesDirectory)
        {
            ExecutionStateCommand command = new ExecutionStateCommand();

            ExecutionEventLog.RecordStatus("Applying Execution State.");
            StateCollection.ApplyDeployments(test.TestInfo.Deployments, testBinariesDirectory);
            return(command);
        }
Пример #22
0
        private static int InsertTestInTable(string parName, DateTime parTimeConstraint)
        {
            TestRecord record = new TestRecord {
                Name = parName, TimeConstraint = parTimeConstraint
            };

            return(DataBaseWorker.Instance.AddTest(record));
        }
Пример #23
0
        public void CompareDifferentHashCode()
        {
            var uniqueGuids = new[] { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() };

            var item1 = TestRecord.CreateTestRecord(Guid.NewGuid(), uniqueGuids, new string[] { "1", "2", "3" });
            var item2 = TestRecord.CreateTestRecord(Guid.NewGuid(), uniqueGuids, new string[] { "1", "2", "3" });

            item1.UniqueGuid.Equals(item2.UniqueGuid).Should().BeFalse();
        }
Пример #24
0
        public void RemoveDescriptors()
        {
            var guid        = Guid.NewGuid();
            var uniqueGuids = new[] { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() };

            var item1 = TestRecord.CreateTestRecord(guid, uniqueGuids, new string[] { "1", "2", "3" });

            item1.UniqueName.Equals(item1.UniqueNameWithDifferentDataDescriptors).Should().BeFalse();
        }
Пример #25
0
        public int AddTest(TestRecord parRecord)
        {
            var res = TestTable.Count;

            parRecord.ID = res;
            TestTable.Add(parRecord);
            Casher.Save(this);
            return(res);
        }
 public OutputRecord Convert(TestRecord testRecord)
 {
     return(new OutputRecord
     {
         Quantity = testRecord.Quantity,
         Symbol = testRecord.Symbol,
         Trader = testRecord.Trader,
     });
 }
 void AddNames(string addChars)
 {
     if (addChars != null)
     {
         string[] letters  = addChars.Split(',');
         var      testName = new TestRecord(letters[0], letters[1], Convert.ToDouble(letters[12], CultureInfo.InvariantCulture), Convert.ToDouble(letters[7], CultureInfo.InvariantCulture), Convert.ToDouble(letters[8], CultureInfo.InvariantCulture), Convert.ToDouble(letters[9], CultureInfo.InvariantCulture));
         _testNames.Add(testName);
     }
 }
Пример #28
0
        /// <summary>
        /// Provides summation of test variation durations. This is internal implementation/computation for ApplyProcessCost, not for general reporting use, as it omits process overhead.
        /// </summary>
        /// <param name="test"></param>
        /// <returns></returns>
        private static TimeSpan GetTestVariationDurationSummation(TestRecord test)
        {
            TimeSpan summation = TimeSpan.Zero;

            foreach (VariationRecord variation in test.Variations)
            {
                summation += Reporting.ReportingUtilities.GetVariationDuration(variation);
            }
            return(summation);
        }
Пример #29
0
        public void Post(TestRecord testRecord, string address)
        {
            var json        = JsonConvert.SerializeObject(testRecord);
            var httpContent = new StringContent(json);
            var response    = _httpClient.PostAsync(address, httpContent).Result;

            //added this logging temp to work out a bug.
            Log4NetLogger.LogEntry(GetType(), "HttpClientManager.Post(TestRecord testRecord, string address)", response.Content.ToString(), LoggerLevel.Info);
            response.EnsureSuccessStatusCode();
        }
Пример #30
0
        public void CompareDataStringArrayEquality()
        {
            var guid        = Guid.NewGuid();
            var uniqueGuids = new[] { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() };

            var item1 = TestRecord.CreateTestRecord(guid, uniqueGuids, new string[] { "1", "2", "3" });
            var item2 = TestRecord.CreateTestRecord(guid, uniqueGuids, new string[] { "1", "2", "3" });

            item1.ArrayOfString.Equals(item2.ArrayOfString).Should().BeTrue();
        }
Пример #31
0
        public void CompareRecordHashCode()
        {
            var guid        = Guid.NewGuid();
            var uniqueGuids = new[] { Guid.NewGuid(), Guid.NewGuid(), Guid.NewGuid() };

            var item1 = TestRecord.CreateTestRecord(guid, uniqueGuids, new string[] { "1", "2", "3" });
            var item2 = TestRecord.CreateTestRecord(guid, uniqueGuids, new string[] { "1", "2", "3" });

            item1.GetHashCode().Equals(item2.GetHashCode()).Should().BeTrue();
        }
        public void Test_Index_Default()
        {
            TestRecord record1 = new TestRecord();
            record1.ID = Guid.NewGuid();
            record1.Text = "Record 1";

            TestRecord record2 = new TestRecord();
            record2.ID = Guid.NewGuid();
            record2.Text = "Record 2";

            TestRecord record3 = new TestRecord();
            record3.ID = Guid.NewGuid();
            record3.Text = "Record 3";

            TestRecord record4 = new TestRecord();
            record4.ID = Guid.NewGuid();
            record4.Text = "Record 4";

            if (DataAccess.Data == null)
                throw new InvalidOperationException("Data provider has not been initialized. Run setup.");

            DataAccess.Data.Saver.Save(record1);
            DataAccess.Data.Saver.Save(record2);
            DataAccess.Data.Saver.Save(record3);
            DataAccess.Data.Saver.Save(record4);

            // Check that the records do exist
            int count = DataAccess.Data.Indexer.GetEntities<TestRecord>().Length;
            Assert.AreEqual(4, count, "Invalid number of TestRecord objects found.");

            BaseIndexProjection page = new BaseIndexProjection("Index", typeof(TestRecord), false);

            // Disable authorisation requirements for test
            page.RequireAuthorisation = false;

            IndexController controller = IndexController.New(page, false);

            if (controller == null)
                throw new Exception("Controller is null.");

            controller.Index();

            Assert.IsNotNull(controller.DataSource, "The DataSource property on the controller wasn't set.");

            Assert.AreEqual(4, controller.DataSource.Length, "Item count mismatch.");

            foreach (TestRecord record in DataAccess.Data.Indexer.GetEntities<TestRecord>())
            {
                DataAccess.Data.Deleter.Delete(record);
            }
        }
Пример #33
0
        public void Test_CountEntities_Generic_NoParameters()
        {
            TestRecord record = new TestRecord();
            record.ID = Guid.NewGuid();
            record.Name = "Test";

            int before = DataAccess.Data.Counter.CountEntities<TestRecord>();

            Assert.AreEqual(0, before);

            DataAccess.Data.Saver.Save(record);

            int after = DataAccess.Data.Counter.CountEntities<TestRecord>();

            Assert.AreEqual(1, after);
        }
Пример #34
0
        protected override void ProcessNonEmptyData(BaseRecord record, Hashtable table, string dataKeyValue)
        {
            //The basic values are all set by :base() and it was also validated that the hashtable contains a key ".Data". 
            TestRecord testRecord = new TestRecord(record);

            //Data is not NULL and not "", hence we need to check which conclusion the author wanted to report
            ConclusionEnum conclusion = ConclusionEnumConverter.ParseConclusion(dataKeyValue);

            if (conclusion == ConclusionEnum.Fatal)
            {
                //We were not able to parse the value inside .Data
                testRecord.AddLineToProcessMessages(string.Format("Unable to parse result {0}", dataKeyValue));

            }
            testRecord.Conclusion = conclusion;

            _results.Add(testRecord);

        }
        public void Test_Remove_Static()
        {
            TestRecord record1 = new TestRecord();
            record1.ID = Guid.NewGuid();
            TestRecord record2 = new TestRecord();
            record2.ID = Guid.NewGuid();

            Collection<TestRecord> collection = new Collection<TestRecord>();
            collection.Add(record1);
            collection.Add(record2);

            TestRecord copy = new TestRecord();
            copy.ID = record1.ID;

            TestRecord[] records = collection.ToArray();

            records = Collection<TestRecord>.Remove(records, copy);

            Assert.AreEqual(1, records.Length, "Invalid number found.");
        }
Пример #36
0
        public void Test_GetPostedEntities_AutoLoadPostEntitiesTrue()
        {
            TestRecord record = new TestRecord();
            record.ID = Guid.NewGuid();

            EntitySelect<TestRecord> ctrl = new EntitySelect<TestRecord>();
            ctrl.AutoLoadPostEntities = true;
            ctrl.EntityType = record.GetType().FullName + ", " + typeof(TestRecord).Assembly.GetName().Name;
            ctrl.RequireAuthorisation = false; // Only false during testing

            Guid[] ids = new Guid[] { record.ID };

            SaveStrategy.New(record, false).Save(record);

            IEntity[] entities = ctrl.GetPostedEntities(ids);

            Assert.IsNotNull(entities, "Returned null");

            // The entity should have been loaded automatically
            Assert.AreEqual(1, entities.Length, "Invalid number of entities returned.");
        }
Пример #37
0
        public void Test_GetPostedEntities_AutoLoadPostEntitiesFalse()
        {
            TestRecord record = new TestRecord();
            record.ID = Guid.NewGuid();

            EntitySelect<TestRecord> ctrl = new EntitySelect<TestRecord>();
            ctrl.AutoLoadPostEntities = false;
            ctrl.EntityType = record.GetType().FullName + ", " + typeof(TestRecord).Assembly.GetName().Name;
            ctrl.RequireAuthorisation = false; // Only false during testing

            Guid[] ids = new Guid[] { record.ID };

            SaveStrategy.New(record, false).Save(record);

            IEntity[] entities = ctrl.GetPostedEntities(ids);

            Assert.IsNotNull(entities, "Returned null");

            // No entities should be returned because they weren't found on DataSource
            Assert.AreEqual(0, entities.Length, "Invalid number of entities returned.");
        }
        public void Test_Index_Paged_Page1()
        {
            List<TestRecord> list = new List<TestRecord>();

            for (int i = 0; i < 30; i++)
            {
                TestRecord record = new TestRecord();
                record.ID = Guid.NewGuid();
                record.Text = "Record " + i;

                DataAccess.Data.Saver.Save(record);

                list.Add(record);
            }

            if (DataAccess.Data == null)
                throw new InvalidOperationException("Data provider has not been initialized. Run setup.");

            BaseIndexProjection page = new BaseIndexProjection("Index", typeof(TestRecord), false);

            PagingLocation location = new PagingLocation(0, 20);

            IndexController controller = IndexController.New(page, location);

            if (controller == null)
                throw new Exception("Controller is null.");

            controller.CurrentPageIndex = 0;

            controller.Index();

            Assert.IsNotNull(controller.DataSource, "The DataSource of the controller wasn't set.");

            IEntity[] entities = (IEntity[])controller.DataSource;

            Assert.AreEqual(20, entities.Length, "DataSource count mismatch.");

            foreach (TestRecord record in list)
                DataAccess.Data.Deleter.Delete(record);
        }
        public void Test_View_EntityProvided()
        {
            TestRecord record1 = new TestRecord();
            record1.ID = Guid.NewGuid();
            record1.Text = "Record 1";

            //DataAccess.Data.Saver.Save(record1);

            // Check that the records do exist
            //int count = DataAccess.Data.Indexer.GetEntities<TestRecord>().Length;
            //Assert.AreEqual(1, count, "Invalid number of TestRecord objects found.");

            BaseViewProjection page = new BaseViewProjection("View", typeof(TestRecord), false);

            ViewController controller = ViewController.New(page);

            if (controller == null)
                throw new Exception("Controller is null.");

            controller.View(record1);

            Assert.IsNotNull(controller.DataSource, "The DataSource property on the controller wasn't set.");
        }
Пример #40
0
        public void WriteRecordWithNullRecord()
        {
            var record = new TestRecord
            {
                IntColumn = 1,
                StringColumn = "string column",
                IgnoredColumn = "ignored column",
                FirstColumn = "first column",
            };

            var stream = new MemoryStream();
            var writer = new StreamWriter( stream );
            var csv = new CsvWriter( writer, new CsvWriterOptions{ HasHeaderRecord = true } );

            csv.WriteRecord( record );
            csv.WriteRecord( (TestRecord)null );
            csv.WriteRecord( record );

            stream.Position = 0;
            var reader = new StreamReader( stream );
            var csvFile = reader.ReadToEnd();
            var expected = "FirstColumn,Int Column,TypeConvertedColumn,StringColumn\r\n";
            expected += "first column,1,test,string column\r\n";
            expected += ",,,\r\n";
            expected += "first column,1,test,string column\r\n";

            Assert.AreEqual( expected, csvFile );
        }
Пример #41
0
 protected override void ProcessFailure(BaseRecord record)
 {
     //All basic values were set by BaseRunner already, so we simply add it to our list
     TestRecord rec = new TestRecord(record);
     _results.Add(rec);
 }
Пример #42
0
 protected override void ProcessEmptyData(BaseRecord record, Hashtable table)
 {
     //Conclusion is already set to .DoesNotApply
     TestRecord rec = new TestRecord(record);
     _results.Add(rec);
 }
        public void Test_Index_PrepareIndex()
        {
            List<TestRecord> list = new List<TestRecord>();

            for (int i = 0; i < 30; i++)
            {
                TestRecord record = new TestRecord();
                record.ID = Guid.NewGuid();
                record.Name = "Record " + i;
                record.Text = "Record " + i;

                DataAccess.Data.Saver.Save(record);

                list.Add(record);
            }

            if (DataAccess.Data == null)
                throw new InvalidOperationException("Data provider has not been initialized. Run setup.");

            BaseIndexProjection page = new BaseIndexProjection("Index", typeof(TestRecord), false);

            PagingLocation location = new PagingLocation(0, 20);

            IndexController controller = IndexController.New(page, location);

            if (controller == null)
                throw new Exception("Controller is null.");

            controller.SortExpression = "NameAscending";

            IEntity[] entities = controller.PrepareIndex();

            Assert.IsNotNull(entities, "entities == null");

            Assert.AreEqual(20, entities.Length, "Entity count mismatch.");

            Assert.AreEqual(30, controller.AbsoluteTotal, "Absolute count mismatch.");

            foreach (TestRecord record in list)
                DataAccess.Data.Deleter.Delete(record);
        }
Пример #44
0
 //Called by this class for each test that exists. Imlementation must add the content to the given stringbuilder.
 protected abstract void ProcessTest(StringBuilder sbTests, TestRecord test, BaseRecord baseRec, ResultPrimarySecondary resultPrimSecond);
Пример #45
0
 protected override void ProcessTest(StringBuilder sbTests, TestRecord test, BaseRecord baseRec, ResultPrimarySecondary resultPrimSecond)
 {
     sbTests.AppendLine(CreateTableRow(baseRec, resultPrimSecond));
 }
Пример #46
0
        public void BasicCreationAndRoundTripTest()
        {
            InitConnection();
            List<GrantedAppsInfo> appsLst = qbApp.GrantedDBs();
            foreach (var app in appsLst)
            {
                foreach (var tab in app.GrantedTables)
                {
                    if (tab.Name == "APITestApp: APITestTable")
                    {
                        IQTable tbl = qbApp.GetTable(tab.Dbid);
                        qbApp.DeleteTable(tbl);
                        break;
                    }
                }
            }

            IQTable testTable = qbApp.NewTable("APITestTable", "dummyRec");
            testTable.Columns.Add(new QColumn("TextTest", FieldType.text));
            testTable.Columns.Add(new QColumn("FloatTest", FieldType.@float));
            testTable.Columns.Add(new QColumn("CheckboxTest", FieldType.checkbox));
            testTable.Columns.Add(new QColumn("DateTest", FieldType.date));
            testTable.Columns.Add(new QColumn("TimeStampTest", FieldType.timestamp));
            testTable.Columns.Add(new QColumn("TimeOfDayTest", FieldType.timeofday));
            testTable.Columns.Add(new QColumn("DurationTest", FieldType.duration));
            testTable.Columns.Add(new QColumn("CurrencyTest", FieldType.currency));
            testTable.Columns.Add(new QColumn("PercentTest", FieldType.percent));
            testTable.Columns.Add(new QColumn("EmailTest", FieldType.email));
            testTable.Columns.Add(new QColumn("PhoneTest", FieldType.phone));
            testTable.Columns.Add(new QColumn("FileTest", FieldType.file));
            testTable.Columns.Add(new QColumn("UrlTest", FieldType.url));

            TestRecord exemplar = new TestRecord();
            exemplar.SetupTestValues();

            IQRecord inRec = testTable.NewRecord();
            inRec["TextTest"] = exemplar.textVal;
            inRec["FloatTest"] = exemplar.floatVal;
            inRec["CheckboxTest"] = exemplar.checkboxVal;
            inRec["DateTest"] = exemplar.dateVal;
            inRec["TimeStampTest"] = exemplar.timeStampVal;
            inRec["TimeOfDayTest"] = exemplar.timeOfDayVal;
            inRec["DurationTest"] = exemplar.durationVal;
            inRec["CurrencyTest"] = exemplar.currencyVal;
            inRec["PercentTest"] = exemplar.percentVal;
            inRec["EmailTest"] = exemplar.emailVal;
            inRec["PhoneTest"] = exemplar.phoneVal;
            inRec["UrlTest"] = exemplar.urlVal;

            Assert.AreEqual(exemplar.textVal, inRec["TextTest"], "Strings setter fails");
            Assert.AreEqual(exemplar.floatVal, inRec["FloatTest"], "Floats setter fails");
            Assert.AreEqual(exemplar.checkboxVal, inRec["CheckboxTest"], "Checkboxes setter fails");
            Assert.AreEqual(exemplar.dateVal, inRec["DateTest"], "Dates setter fails");
            Assert.AreEqual(exemplar.timeStampVal, inRec["TimeStampTest"], "TimeStamps setter fails");
            Assert.AreEqual(exemplar.timeOfDayVal, inRec["TimeOfDayTest"], "TimeOfDays setter fails");
            Assert.AreEqual(exemplar.durationVal, inRec["DurationTest"], "Durations setter fails");
            Assert.AreEqual(exemplar.currencyVal, inRec["CurrencyTest"], "Currency setter fails");
            Assert.AreEqual(exemplar.percentVal, inRec["PercentTest"], "Percent setter fails");
            Assert.AreEqual(exemplar.emailVal, inRec["EmailTest"], "Email setter fails");
            Assert.AreEqual(exemplar.phoneVal, inRec["PhoneTest"], "Phone setter fails");
            Assert.AreEqual(exemplar.urlVal, inRec["UrlTest"], "Url setter fails");

            testTable.Records.Add(inRec);
            testTable.AcceptChanges();

            Assert.AreEqual(exemplar.textVal, inRec["TextTest"], "Strings wrong post upload");
            Assert.AreEqual(exemplar.floatVal, inRec["FloatTest"], "Floats wrong post upload");
            Assert.AreEqual(exemplar.checkboxVal, inRec["CheckboxTest"], "Checkboxes wrong post upload");
            Assert.AreEqual(exemplar.dateVal, inRec["DateTest"], "Dates wrong post upload");
            Assert.AreEqual(exemplar.timeStampVal, inRec["TimeStampTest"], "TimeStamps wrong post upload");
            Assert.AreEqual(exemplar.timeOfDayVal, inRec["TimeOfDayTest"], "TimeOfDays wrong post upload");
            Assert.AreEqual(exemplar.durationVal, inRec["DurationTest"], "Durations wrong post upload");
            Assert.AreEqual(exemplar.currencyVal, inRec["CurrencyTest"], "Currency wrong post upload");
            Assert.AreEqual(exemplar.percentVal, inRec["PercentTest"], "Percent wrong post upload");
            Assert.AreEqual(exemplar.emailVal, inRec["EmailTest"], "Email wrong post upload");
            Assert.AreEqual(exemplar.phoneVal, inRec["PhoneTest"], "Phone wrong post upload");
            Assert.AreEqual(exemplar.urlVal, inRec["UrlTest"], "Url wrong post upload");

            testTable.Records.Clear();
            testTable.Query();

            IQRecord outRec = testTable.Records[0];
            Assert.AreEqual(exemplar.textVal, outRec["TextTest"], "Strings don't roundtrip");
            Assert.AreEqual(exemplar.floatVal, outRec["FloatTest"], "Floats don't roundtrip");
            Assert.AreEqual(exemplar.checkboxVal, outRec["CheckboxTest"], "Checkboxes don't roundtrip");
            Assert.AreEqual(exemplar.dateVal, outRec["DateTest"], "Dates don't roundtrip");
            Assert.AreEqual(exemplar.timeStampVal, outRec["TimeStampTest"], "TimeStamps don't roundtrip");
            Assert.AreEqual(exemplar.timeOfDayVal, outRec["TimeOfDayTest"], "TimeOfDays don't roundtrip");
            Assert.AreEqual(exemplar.durationVal, outRec["DurationTest"], "Durations don't roundtrip");
            Assert.AreEqual(exemplar.currencyVal, outRec["CurrencyTest"], "Currencies don't roundtrip");
            Assert.AreEqual(exemplar.percentVal, outRec["PercentTest"], "Percents don't roundtrip");
            Assert.AreEqual(exemplar.emailVal, outRec["EmailTest"], "Emails don't roundtrip");
            Assert.AreEqual(exemplar.phoneVal, outRec["PhoneTest"], "Phones don't roundtrip");
            Assert.AreEqual(exemplar.urlVal, outRec["UrlTest"], "Url don't roundtrip");

            exemplar.Setup2ndValues();
            outRec["TextTest"] = exemplar.textVal;
            outRec["FloatTest"] = exemplar.floatVal;
            outRec["CheckboxTest"] = exemplar.checkboxVal;
            outRec["DateTest"] = exemplar.dateVal;
            outRec["TimeStampTest"] = exemplar.timeStampVal;
            outRec["TimeOfDayTest"] = exemplar.timeOfDayVal;
            outRec["DurationTest"] = exemplar.durationVal;
            outRec["CurrencyTest"] = exemplar.currencyVal;
            outRec["PercentTest"] = exemplar.percentVal;
            outRec["EmailTest"] = exemplar.emailVal;
            outRec["PhoneTest"] = exemplar.phoneVal;
            outRec["UrlTest"] = exemplar.urlVal;

            testTable.AcceptChanges();
            testTable.Query();

            IQRecord outRec2 = testTable.Records[0];
            Assert.AreEqual(exemplar.textVal, outRec2["TextTest"], "Strings don't update");
            Assert.AreEqual(exemplar.floatVal, outRec2["FloatTest"], "Floats don't update");
            Assert.AreEqual(exemplar.checkboxVal, outRec2["CheckboxTest"], "Checkboxes don't update");
            Assert.AreEqual(exemplar.dateVal, outRec2["DateTest"], "Dates don't update");
            Assert.AreEqual(exemplar.timeStampVal, outRec2["TimeStampTest"], "TimeStamps don't update");
            Assert.AreEqual(exemplar.timeOfDayVal, outRec2["TimeOfDayTest"], "TimeOfDays don't update");
            Assert.AreEqual(exemplar.durationVal, outRec2["DurationTest"], "Durations don't update");
            Assert.AreEqual(exemplar.currencyVal, outRec2["CurrencyTest"], "Currencies don't update");
            Assert.AreEqual(exemplar.percentVal, outRec2["PercentTest"], "Percents don't update");
            Assert.AreEqual(exemplar.emailVal, outRec2["EmailTest"], "Emails don't update");
            Assert.AreEqual(exemplar.phoneVal, outRec2["PhoneTest"], "Phones don't update");
            Assert.AreEqual(exemplar.urlVal, outRec2["UrlTest"], "Url don't update");

        }
 public void SetupTest()
 {
     _record = new TestRecord();
 }
Пример #48
0
		public void TestExpressionMapper_Int()
		{
			//Arrange
			var em = new ExpressionMapper<TestRecord, Test_Int>();
			var tr = new TestRecord { Steps = new List<TestStepRecord> { new TestStepRecord {Step = "Test" } } };

			//Act
			var t = em.GetMapper()(tr);

			//Assert
			Assert.IsTrue(t.Steps.Count == 1);
			Assert.IsTrue(t.NotNullSetterCalled);
		}
Пример #49
0
 protected bool Equals(TestRecord other)
 {
     return string.Equals(_name, other._name) && _kind == other._kind && Equals(_hash, other._hash);
 }