Ejemplo n.º 1
0
        public void Object_separator_flag(string a, string b)
        {
            var sa = SigoSchema.Parse(a);
            var sb = SigoSchema.Parse(b);

            SigoAssert.Equal(sa.Count(), sb.Count());
        }
Ejemplo n.º 2
0
 public static IEnumerable <object[]> ObjectData(string schema = null)
 {
     schema ??= @"
         name = {03, first:'a', last?:'b'};
         user = {03, name?, age?: 1};
         // return
         user";
     return(SigoSchema.Parse(schema).Generate().Select(s => new[] { new SigoWraper(s) }));
 }
Ejemplo n.º 3
0
        private static void Main()
        {
            var statements = new List <string> {
                "    string = 'usd'|'eur'",
                "    number = 1|2|3",
                "    bool = true|false",
                "    account = {kind: string, amount?: number}"
            };

            // eval the initial statements
            foreach (var statement in statements)
            {
                SigoSchema.Parse(statement);
            }

            ShowSchemasAndHelp();

            while (true)
            {
                Console.Write("schema>");
                var src = Console.ReadLine();
                switch (src)
                {
                case null:
                case "":
                    continue;

                case "?":
                case "help": {
                    ShowSchemasAndHelp();
                    continue;
                }

                case "exit":
                case "quit":
                    return;

                default: {
                    try {
                        var schema = SigoSchema.Parse(src);
                        if (schema.Count() == 0)
                        {
                            continue;
                        }

                        GenerateAllPossibleValues(schema);
                    } catch (Exception e) {
                        Console.Error.WriteLine(e.Message);
                    }

                    break;
                }
                }
            }
        }
Ejemplo n.º 4
0
 public void UniqueTest()
 {
     SigoAssert.Equal(Leafs(2, 0), SigoSchema.Parse(src).Generate(GenerateOptions.Unique));
 }
Ejemplo n.º 5
0
 public void UniqueSortedTest()
 {
     SigoAssert.Equal(Leafs(0, 2), SigoSchema.Parse(src).Generate(GenerateOptions.UniqueSorted));
 }
Ejemplo n.º 6
0
 private static IList <ISigo> Gen(string src)
 {
     return(SigoSchema.Parse(src).Generate().ToList());
 }