Exemple #1
0
        public void EndToEnd()
        {
            EmptyStickeredDatabase database = new EmptyStickeredDatabase();

            CheckDump(database);
            for (int i = 0; i < 100; ++i)
            {
                database.Add(i, i * i);
                CheckDump(database);
                Assert.IsTrue(database.NoStickers(i, i * i));
            }
        }
Exemple #2
0
        private void CheckDump(EmptyStickeredDatabase db)
        {
            HashSet <Tuple <long, long> > temp = db.unstickeredCache;

            Assert.IsTrue(db.LoadFromArray(db.Dump()));
            Assert.AreEqual(temp, db.unstickeredCache);
            Assert.IsTrue(
                db.LoadFromArray(
                    BinarySerialization.NS.Deserialize <string[]>(
                        BinarySerialization.NS.Serialize(db.Dump()))));
            Assert.AreEqual(temp, db.unstickeredCache);
            Assert.IsTrue(
                db.LoadFromArray(
                    BinarySerialization.NS.Deserialize <string[]>(
                        BinarySerialization.NS.Serialize(db.Dump(), true), true)));
            Assert.AreEqual(temp, db.unstickeredCache);
        }
Exemple #3
0
        public Logic(TMBot bot)
        {
            botName         = bot.config.Username;
            parent          = bot;
            PREFIXPATH      = Path.Combine("CS", botName);
            UNSTICKEREDPATH = Path.Combine(PREFIXPATH, "emptystickered.txt");

            __database__       = new SalesDatabase(PREFIXPATH);
            __emptystickered__ = new EmptyStickeredDatabase();

            DATABASEJSONPATH = Path.Combine(PREFIXPATH, "database.json");
            BLACKLISTPATH    = Path.Combine(PREFIXPATH, "blackList.txt");
            MONEYTPATH       = Path.Combine(PREFIXPATH, "money.txt");
            if (!Directory.Exists(PREFIXPATH))
            {
                Directory.CreateDirectory(PREFIXPATH);
            }
            Tasking.Run(StartUp, botName);
        }
Exemple #4
0
        public Core(int port = 4345)
        {
            try {
                server = new HttpListener();
                logger = new NewMarketLogger("Core");
                server.Prefixes.Add($"http://+:{port}/");
                Init();
                VK.Init();

                unstickeredCache = new EmptyStickeredDatabase();
                unstickeredCache.LoadFromArray(File.ReadAllLines(Path.Combine("assets", "emptystickered.txt")));

                logger.Nothing("Starting!");
                ReloadConfig();
                server.Start();
                logger.Nothing("Started!");
                Task.Run((Action)Listen);
                Task.Run((Action)BackgroundCheck);
                Task.Run((Action)UnstickeredDumper);
                //Task.Run((Action)DBHitProvider);
            } catch (Exception ex) {
                logger.Crash($"Message: {ex.Message}. Trace: {ex.StackTrace}");
            }
        }