Example #1
0
        public void ErlInsertManyAndQuery()
        {
            var schema = store.GetSchema(new Query("CRUD.SECDEF"));

            for (var i = 0; i < CCY_PAIRS.Length; i++)
            {
                var row = new DynamicRow(schema);

                row.ApplyDefaultFieldValues(store.TargetName);

                var ccy1 = CCY_PAIRS[i].Substring(0, 3);
                var ccy2 = CCY_PAIRS[i].Substring(4, 3);

                row["xchg"]       = "CLE";
                row["symbol"]     = ccy1 + ccy2;
                row["instr"]      = CCY_PAIRS[i];
                row["secid"]      = i;
                row["xchg_secid"] = 1000 + i;
                row["ccy"]        = ccy1;
                row["settl_ccy"]  = ccy2;

                row["contr_mult"] = 1.0d;
                row["px_step"]    = 10e-5d;

                Assert.IsNull(row.Validate());

                var affected = store.Insert(row);
                Assert.AreEqual(1, affected);
            }

            var qry = new Query("CRUD.SecDef.ByExchange")
            {
                new Query.Param("Exchange", "CLE")
            };

            var data = store.LoadOneRowset(qry);

            Assert.IsNotNull(data);

            Console.WriteLine(data.ToJSON(JSONWritingOptions.PrettyPrintRowsAsMap));

            Assert.AreEqual(CCY_PAIRS.Length, data.Count);
        }