Example #1
0
 public function testRun()
 {
     $opml = new OpmlLoader();
     $opml->setContent($this->mockContent);
     $result = $opml->run();
     $this->assertCount(1, $result);
     $this->assertArrayHasKey('name', $result[0]);
     $this->assertEquals('Amazon.de: Top 100 Kostenlos', $result[0]['name']);
 }
Example #2
0
             case 'sqlite':
                 if (file_exists($app->config('database_dsn'))) {
                     unlink($app->config('database_dsn'));
                 }
                 break;
         }
         $connector = new DatabaseConnector($app->config('database_adapter'), $app->config('database_dsn'), $app->config('database_username'), $app->config('database_password'));
         $db = $connector->getInstance();
         if ($db != null) {
             $connector->migrate($db, ROOT_DIR . '/src/Nogo/Feedbox/Resources/sql/' . $app->config('database_adapter'));
             $user = array('name' => $input['login_username'], 'email' => $input['login_email'], 'password' => password_hash($input['login_password'], PASSWORD_DEFAULT), 'active' => true, 'superadmin' => true, 'created_at' => date('Y-m-d H:i:s'), 'updated_at' => date('Y-m-d H:i:s'));
             $userRepository = new User($db);
             $user['id'] = $userRepository->persist($user);
             $opml = trim($request->post('opml'));
             if (!empty($opml)) {
                 $opmlLoader = new OpmlLoader();
                 $opmlLoader->setContent($opml);
                 $sources = $opmlLoader->run();
                 if (!empty($sources)) {
                     $sourceRepository = new Source($db);
                     foreach ($sources as $source) {
                         $source['user_id'] = $user['id'];
                         $sourceRepository->persist($source);
                     }
                 }
             }
         }
         $app->render('done.html.twig', array('title' => 'Install'));
         $app->config('installed', true);
     }
 });